Android:Androidタブのクリックでタブアイコンを変更するには
タブレットでタブアイコンを変更したいです。私は
http://developer.android.com/resources/tutorials/views/hello-tabwidget.html http://www.androidhive.info/2011/08/android-tab-layout-tutorial/
ようselecter xmlファイルを経由して、タブのアイコンを変更するが、私の原因で、これらすべてのことを動作しない理由をする方法を案内するチュートリアルが選択に非選択と非選択を選択しただけで最初のタブのアイコンを変更することが続いていますしかし
などの名前に従うように私のコードに問題がファイルを設定私の描画可能なアイコンをたどるよう
私のコードがあるのplzのplz plzは私を助けてくださいでは、すべての他人のために動作しません
描画可能なフォルダの下becel_setting.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected, -->
<item android:drawable="@drawable/menu_promenera_selected"
android:state_selected="true"
android:state_pressed="false" />
<!-- When not selected, -->
<item android:drawable="@drawable/menu_promenera"
/>
<!-- When selected, -->
<item android:drawable="@drawable/menu_varaframsteg_selected"
android:state_selected="true"
android:state_pressed="false" />
<!-- When not selected, -->
<item android:drawable="@drawable/menu_varaframsteg"
/>
<!-- When selected, -->
<item android:drawable="@drawable/menu_minapromenader_selected"
android:state_selected="true"
android:state_pressed="false" />
<!-- When not selected,-->
<item android:drawable="@drawable/menu_minapromenader"
/>
<!-- When selected, -->
<item android:drawable="@drawable/menu_information_selected"
android:state_selected="true"
android:state_pressed="false" />
<!-- When not selected, -->
<item android:drawable="@drawable/menu_information"
/>
</selector>
と
public class BECEL extends TabActivity{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try{
setMenuTabs();
}catch(Exception ex){
String message = ex.getMessage();
}
}
private void setMenuTabs() {
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
/*******************************************/
intent = new Intent(this, BecelFacebookConnection.class);
spec = tabHost.newTabSpec("").setIndicator("",
res.getDrawable(R.drawable.becel_setting)).setContent(intent); /**** xml file name becel_setting ******/
tabHost.addTab(spec);
intent = new Intent(this, OurProgress.class);
Drawable mySelector = getResources().getDrawable(R.drawable.menu_varaframsteg);
spec = tabHost.newTabSpec("").setIndicator("",mySelector).setContent(intent);
tabHost.addTab(spec);
intent = new Intent(this, MyWalks.class);
spec = tabHost.newTabSpec("").setIndicator("",
res.getDrawable(R.drawable.menu_minapromenader)).setContent(intent);
tabHost.addTab(spec);
intent = new Intent(this, WalkInformations.class);
spec = tabHost.newTabSpec("").setIndicator("",
res.getDrawable(R.drawable.menu_information)).setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
}
に従うように私のタブホストホストクラスがある私のコード
(感謝waqasそれはまだeache newTabSpecのためのユニークなnamw前と同じ問題が動作していない) – ALI
または多分してみてください'setIndicator'にも名前を追加します。私の更新された答え – waqaslam
はまだユニークな値newTebspecとsetIndicatorの両方を追加しても動作しません。私は大きな問題を感じています。クリックしたときにdiffrenetアイコンのタブが2〜3つ以上変化するチュートリアルがある場合 – ALI