Настроить строку заголовка по умолчанию в Android

Когда я создаю любое приложение, Android всегда дает мне одну и ту же строку заголовка. Что мне нужно сделать, чтобы настроить его (фон и текст)? Может быть, изменить style.xml или изменить метод onCreate()?

Я обновил AndroidManifest.xml и styles.xml:

@AndroidManifest.xml

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.app.searchmedicinelayout"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />
    <uses-permission android:name="android.permission.INTERNET"/>

    <application
        android:allowBackup="true"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.app.searchmedicinelayout.SearchMedicineActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".DetailMedicine"
            android:label="@string/detail"
            android:parentActivityName="com.app.searchmedicinelayout.SearchMedicineActivity" >

        </activity>
    </application>

</manifest>

@styles.xml

<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <!--
        Base application theme, dependent on API level. This theme is replaced
        by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    -->
    <style name="AppBaseTheme" parent="android:Theme.Light">
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.
        -->
    </style>

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
    </style>

</resources>

person user2353978    schedule 02.06.2013    source источник


Ответы (2)


вы можете изменить название приложения и действия в файле AndroidManifest.xml. Вы меняете значения полей «android: label» на свой собственный текст. «@string/app_name» — это метка, объявленная в файле «strings» (папка «values» вашего проекта). Там вы можете создавать или изменять новые метки.

  <application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" 
    android:name="shooterfugio.aquiniela2.MiApp">
    <activity
        android:name="shooterfugio.aquiniela2.MiTareaAsincrona"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="com.facebook.LoginActivity"
              android:theme="@android:style/Theme.Translucent.NoTitleBar"
              android:label="@string/app_name" />
    <activity android:name=".Main"
              android:label="@string/app_name" />
    <activity android:name=".Aquiniela"
              android:label="@string/app_name" />
    <activity android:name=".IntroduceTexto"
              android:label="@string/app_name" />
    <activity
        android:name=".Popup1"
        android:label="@string/info"
        android:theme="@android:style/Theme.Dialog" >
    </activity>  
    <meta-data android:name="com.facebook.sdk.ApplicationId" 
               android:value="@string/applicationId" />
</application>

Чтобы изменить фон, вы должны сделать это в файле name_activity.xml следующим образом:

  <LinearLayout android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:layout_gravity="center_horizontal"
              android:gravity="center_horizontal"
              android:background="@drawable/image_background"
              android:id="@+id/main_ui_container">

Примечание: «image_background» — это имя файла с фоновым изображением (находится в папке «drawable»)

person Juan José Torres Díaz    schedule 02.06.2013
comment
Я думаю, вы не понимаете моего вопроса. Я хочу изменить строку заголовка, которая содержит значок, ярлык, название проекта... Я только меняю фон и изменяю размер текста, цвет текста, выравнивание текста. Я не хочу показывать это макету. - person user2353978; 02.06.2013

Мне, вероятно, нужно взглянуть на ваш код, но заголовок и стиль строки заголовка обычно определяются в AndroidManifest.xml. В частности, вы хотите посмотреть на часть, которая определяет ваше приложение:

<application
 android:icon="@drawable/icon" 
 android:label="@string/app_name"
 android:theme="@style/customTheme">

Теперь, чтобы изменить текст строки заголовка, вам нужно перейти к файлу strings.xml и отредактировать значение для app_name. Если, с другой стороны, вы хотите изменить его стиль, вам нужно создать стиль файл под res/values/ с некоторым стилем xml. Например, следующий код:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    <style name="customTheme" parent="android:Theme.Light">
    <item name="android:windowBackground">#1BE032</item>
    <item name="android:colorBackground">#1BE032</item>
    </style>
    </resources>

окно будет выглядеть слишком зеленоватым.

В любом случае было бы полезно опубликовать свой AndroidManifest и любые пользовательские темы, если вы их используете.

person verybadalloc    schedule 02.06.2013
comment
Я просто хочу изменить фон в строке заголовка, установить центр текста и изменить размер. AndroidManifest используется по умолчанию при создании проекта. Я обновил 2 файла сверху. - person user2353978; 02.06.2013