2011-10-21 9 views
12
は、次のように

私は私のマニフェストで、ダイアログの活動を宣言した:Android:ダイアログアクティビティのタイトルバーにアイコンを設定するにはどうすればよいですか?

<activity android:name=".myDialog" 
       android:label="@string/title_dlg" 
       android:icon="@android:drawable/ic_dialog_alert" 
       android:exported="false" 
       android:excludeFromRecents="true" 
       android:theme="@android:style/Theme.Dialog"> 

しかし、タイトルだけのテキストがタイトルバーに表示され、アイコンが無視されるように表示されます。 タイトルバーにアイコンを表示する方法はありますか?その後

requestWindowFeature(Window.FEATURE_LEFT_ICON); 

+0

アイコンのサイズは? – ingsaurabh

+0

@ingsaurabh申し訳ありませんが、あなたの質問に気づいたばかりです。アイコンは、Androidのリソースに '@android:drawable/ic_dialog_alert'です。 48x48ピクセルです。 – Pooks

答えて

26

使用これはあなたのsuper.onCreate(savedInstanceState);呼び出した後、コンテンツのビューを設定する前にそれを置くために

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 

は覚えておいてください動作しますsuperコールの後の行の下に使用したと思いますcontentView(R.layout.youLayout); と設定してから、これを使用してください。

getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, android.R.drawable.ic_dialog_alert); 

この順序は重要です。

1

は私が

+0

ありがとう、私はあなたのソリューションを試しましたが、それは普通の青いバーでタイトルバーを置き換えました。今やテキストはなく、まだアイコンはありません。 :( – Pooks

+0

もちろん、カスタムタイトルを宣言してシステムに指定する必要があることはわかりません – ingsaurabh

関連する問題