我一直有這個問題1個星期。
我有一個MainActivity extends TabActivity
和A,B兩個活動在每個標籤。
現在我想在活動A中按一個按鈕,將當前頁面設置爲活動B的
但我不能使用setCurrentTab
方法,但在MainActivity
中除外。 如何使此功能起作用?如何在tab的活動中使用setCurrentTab方法?
public class MainActivity extends TabActivity
public TabHost tabHost;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Resources res = getResources();
tabHost = getTabHost();
TabHost.TabSpec spec;
Intent intent;
intent = new Intent().setClass(this, StartActivity.class);
spec = tabHost.newTabSpec("tab1").setIndicator("A",res.getDrawable(R.drawable.start))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, WeatherActivity.class);
spec = tabHost.newTabSpec("tab2").setIndicator("B",res.getDrawable(R.drawable.weather))
.setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
public class AActivity extends Activity{
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.a_layout);
Button b = (button)findViewById(R.id.bt);
b.setOnClickListener(this);
}
public void onClick(View v) {
tabHost.setCurrentTab(1);
//Can't work here
}
}
嘗試使用tabHost.setOnTabChangedListener(新OnTabChangeListener() \t \t \t { \t \t \t \t \t \t \t \t公共無效onTabChanged(字符串tabId) \t \t \t \t {} –