public class SoapBox extends TabActivity{
private TabHost tabHost;
private void setupTabhost()
{
tabHost=(TabHost)findViewById(android.R.id.tabhost);
tabHost.setup();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tab);
TabHost tabHost=getTabHost();
setupTabhost();
tabHost.getTabWidget().setDividerDrawable(R.drawable.tab_space);
Intent intent1=new Intent().setClass(this, MySoapBox.class);
setupTab(new TextView(this), "My SoapBox", intent1);
Intent intent2=new Intent().setClass(this, FriendsSoapBox.class);
setupTab(new TextView(this),"Friends SoapBox", intent2);
Intent intent3=new Intent().setClass(this, Recommendations.class);
setupTab(new TextView(this),"Recommendations", intent3);
tabHost.setCurrentTab(0);
}
private void setupTab(final View view, final String tag, Intent intent)
{
View tabView=createTabView(tabHost.getContext(), tag);
TabSpec tabSpec=tabHost.newTabSpec(tag).setIndicator(tabView).setContent(intent);
tabHost.addTab(tabSpec);
}
private static View createTabView(final Context context,final String text)
{
View view= LayoutInflater.from(context).inflate(R.layout.tabs_bg,null);
TextView textView=(TextView)view.findViewById(R.id.tabsText);
textView.setText(text);
return view;
}
}
这里我在Tab按钮里面还有一个Tab小部件,我实现了一个嵌套的Tab小部件,当我将一个标签切换到另一个标签并返回上一个标签时,我没有得到第一个标签的焦点.
当我再次选择父选项卡时,嵌套选项卡的焦点应始终位于第一个选项卡上.
请指导我,我的代码在哪里搞错了?
提前致谢.
解决方法:
setCurrentTab();属性决定默认选项卡.
如果使用tabHost.setCurrentTab(n);然后第n个选项卡将成为默认选项卡.
标签:android,tabwidget 来源: https://codeday.me/bug/20190711/1436170.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。