我通过执行以下操作动态地将选项卡添加到我的TabHost(‘tabs’):
TabSpec passspec = tabs.newTabSpec("Pass Tab");
passspec.setIndicator("Passengers",getResources().getDrawable(R.drawable.tab_message));
passspec.setContent(new TabHost.TabContentFactory() {
public View createTabContent(String tag) {
View layout = mInflater.inflate(R.layout.tab_content_passengers,null);
return(layout);
}
});
tabs.addTab(passspec);
这很好用……我遇到的问题是稍后更改该选项卡上的内容.有没有办法实现这一点,而不用全新的布局重新膨胀所有选项卡?
我正在尝试以下内容并且没有任何反应:
mInflater = LayoutInflater.from(this);
View layout = mInflater.inflate(R.layout.tab_content_passengers,null);
TextView t = (TextView) layout.findViewById(R.id.testText);
t.setText("Hello world??");
最佳答案
您可以保留对布局变量的引用(可能在地图或其他内容中),然后以编程方式稍后对其进行修改,如下所示:
tabMap.get(tabId).findViewById(R.id.testText).setText("The text is changed Now!");
只要您在UI线程上执行此操作,就应立即反映更改.
原文地址:https://www.jb51.cc/android/430438.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。