0

ビューを tabSpec インジケーターとして使用すると、タブが選択されているかどうかにかかわらず、ビューは同じです。

選択したタブに異なるドローアブル (セレクター) を使用する場合のように、異なるビューを使用する方法はありますか?

すでにセレクターを使用してみましたが、アイコンの変更しかできません。私が望むのは、カスタム ビューを使用しても、さまざまなタブの状態に対してさまざまなビューを使用できることです。

これが私のコードです:

View profilInd = getLayoutInflater().inflate(R.layout.tabs_profil_layout, null);
Intent profilIntent = new Intent(this, MyProfilActivity.class);
tabHost.addTab(tabHost.newTabSpec("profil").setIndicator(profilInd).setContent(profilIntent));

tabs_profil_layout レイアウトは、ImageView と TextView を持つ単純な LinearLayout です。

4

1 に答える 1

2

あなたがしたいことは、選択された状態と選択されていない状態の間で変化するビュー/ドローアブルでセレクターを使用することです。

この質問は、いくつかの同様のトピックをカバーしています: Android: 状態のタブのカスタマイズ: セレクターをドローアブルにする方法

基本的に、次のようなドローアブル リソースを作成します。

 <?xml version="1.0" encoding="utf-8"?>
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:state_pressed="true"
           android:drawable="@drawable/button_pressed" /> <!-- pressed -->
     <item android:state_focused="true"
           android:drawable="@drawable/button_focused" /> <!-- focused -->
     <item android:drawable="@drawable/button_normal" /> <!-- default -->
 </selector>

次に、タブに割り当てます。

セレクターと Drawable の詳細については、こちらをご覧ください。

于 2012-05-17T17:11:28.357 に答える