タブ ウィジェットでカスタムまたはデフォルトのタブ区切りを設定する方法。カスタムタブウィジェットを作成するために以下のコードを試しました。
private void setTabs()
{
TabHost tabhost=getTabHost();
tabhost.getTabWidget().setDividerDrawable(TabWidget.SHOW_DIVIDER_MIDDLE);//here Application crashes
tabhost.addTab(createTab(FoodTabGroup.class, "foods", "Foods", R.drawable.tab_foods));
tabhost.addTab(createTab(BeveragesTabGroup.class, "beverages", "Beverages", R.drawable.tab_beverages));
tabhost.addTab(createTab(DessertsTabGroup.class, "desserts", "Desserts", R.drawable.tab_desserts));
tabhost.addTab(createTab(WinesTabGroup.class, "wines", "Wines", R.drawable.tab_wines));
tabhost.addTab(createTab(OrderTabGroup.class, "order", "Order", R.drawable.tab_order));
tabhost.getTabWidget().getChildAt(0).getLayoutParams().width = 140;
tabhost.getTabWidget().getChildAt(1).getLayoutParams().width = 140;
tabhost.getTabWidget().getChildAt(2).getLayoutParams().width = 140;
tabhost.getTabWidget().getChildAt(3).getLayoutParams().width = 140;
tabhost.getTabWidget().getChildAt(4).getLayoutParams().width = 140;
tabhost.getTabWidget().getChildAt(0).getLayoutParams().height= 150;
tabhost.getTabWidget().getChildAt(1).getLayoutParams().height= 150;
tabhost.getTabWidget().getChildAt(2).getLayoutParams().height= 150;
tabhost.getTabWidget().getChildAt(3).getLayoutParams().height= 150;
tabhost.getTabWidget().getChildAt(4).getLayoutParams().height= 150;
tabhost.setCurrentTab(0);
}
private TabSpec createTab(final Class<?> intentClass, final String tag,
final String title, final int drawable)
{
final Intent intent = new Intent();
intent.setClass(this, intentClass);
final View tab = LayoutInflater.from(getTabHost().getContext()).
inflate(R.layout.tab, null);
TextView txtTab=(TextView)tab.findViewById(R.id.tab_text);
txtTab.setText(title);
txtTab.setPadding(8, 9, 8, 9);
txtTab.setTextColor(Color.WHITE);
txtTab.setTextSize(18);
ImageView imgTab=(ImageView)tab.findViewById(R.id.tab_icon);
imgTab.getLayoutParams().height=80;
imgTab.getLayoutParams().width=80;
imgTab.setImageResource(drawable);
return getTabHost().newTabSpec(tag).setIndicator(tab).setContent(intent);
}
タブウィジェットでカスタムディバイダーを設定するのを手伝ってください..
前もって感謝します。