27

標準のタイトルを無効にしてすべてを自分で管理することにより、アクティビティのカスタムタイトルを作成しています。自分のニーズに合わせて標準タイトルを置き換える/テーマ化することは可能かしら。

windowXYZStyleアイテムを変更することで、テーマを介してサイズ、背景画像、テキストをカスタマイズできます。

私が見つけられなかった唯一のこと-テキストの代わりに画像を追加する方法。カスタムレイアウトを割り当ててみましrequestWindowFeature(Window.FEATURE_CUSTOM_TITLE) たが、機能しないようです。

編集:これはテストの提案のレポートです、コードは以下です-結果-画像ビューが表示されていません。

アクティビティ

public class SettingsActivity extends PreferenceActivity  {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.settings);

    }
}

XML :

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/title"
    android:layout_width="fill_parent"
    android:layout_height="26dip"
    android:paddingLeft="5dip"
    android:background="@drawable/titlebar_bg"
    android:layout_gravity="left|center"
>
    <ImageView
        android:id="@+id/logo"
        android:src="@drawable/title_logo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>
4

4 に答える 4

36

独自のカスタム タイトル レイアウトを設定することは可能ですが、実行の順序が重要です。次の順序で作業を行う必要があります。

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.my_layout);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.my_custom_title);

さらに、タイトルのサイズを大きくする必要がある場合があります。そうしないと、カスタム レイアウトの下部がアクティビティによって覆われてしまう可能性があります。タイトルのサイズを指定するテーマを追加することで、サイズを変更できます。これは、値の XML ファイルに入ります。

<resources>
    <style name="LargeTitleTheme">
        <item name="android:windowTitleSize">40dip</item>
    </style>
</resources>

次に、AndroidManifest.xml でアクティビティ (アプリケーション全体にこのカスタム タイトル バーを表示する場合はアプリケーション) のテーマを設定する必要があります。

<activity android:name=".MyCustomTitleActivity" android:theme="@style/LargeTitleTheme" />
于 2010-01-18T16:22:07.540 に答える
7

いつでも使用できます:

requestWindowFeature(Window.FEATURE_NO_TITLE);

次に、アクティビティのビュー内に独自のタイトル バーを作成します。

于 2010-01-18T15:31:24.130 に答える
1

背景画像の一部として組み合わせてタイトルを空白のままにするのではなく、タイトルに画像を使用する必要がありますか? NinePatch画像を使用すると、デバイスに関係なく見栄えのする結果が得られると思いますか?

于 2010-04-29T01:15:06.287 に答える
1

次のコードを使用して、カスタム タイトルを画面に合わせました。

<ImageView
    android:id="@+id/header_img"
    android:src="@drawable/header_img"
    android:layout_width="700dip"
    android:layout_height="70dip" />
于 2015-03-14T18:24:10.803 に答える