android SDK中提供了TabHost使用起來很方便, 但是當tab比較多的時候,就會擠在一起,而不能橫向的滾動比較麻煩.
于是我嘗試的制作了一個簡單的使用Gallery來代替TabHost的例子, 確實夠簡單的,自娛自樂.....僅供參考

使用BroadcastReceiver來切換不同的Tab
public class ChangeTabBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int index = intent.getExtras().getInt(CURRENT_TAB_INDEX);
Log.i(TAG, "onReceive index = " + index);
// setCurrentTab(index);
topBar.setSelection(index);
startGroupActivity(titleList.get(index).toString(),
(Intent) intentList.get(index));
}
}
沒有詳細研究SDK中的TabHost實現機制, 使用起來還是有些不方便的地方
public class GalleryTabActivityDemo extends GalleryTabactivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setDelegate(new SliderBarActivityDelegateImpl());
for (int i = 0; i < 14; i++) {
Intent intent;
if (i % 2 == 0)
intent = new Intent(this, DemoActivity1.class);
else
intent = new Intent(this, DemoActivity2.class);
this.addTab("title" + i, android.R.drawable.star_on, intent);
}
//必須在addTab后調用commit, 有點麻煩, 將來會找更好的辦法
super.setup();
}
//可自定義切換tab時觸發的操作
private class SliderBarActivityDelegateImpl extends
SliderBarActivityDelegate {
protected void onTabChanged(int tabIndex) {
Log.d("onTabChanged", "" + tabIndex);
}
}
}
最近工作比較忙,沒太多時間學習android,將來會慢慢改善, 先湊合用, 拋塊磚先, 各位有玉的使勁砸, 金條也行
下載
posted on 2010-05-13 15:46
小強 閱讀(2158)
評論(0) 編輯 收藏 所屬分類:
google-android