0

我正在使用 TabHost 的活动类中使用选项卡。

TabHost tabHost=(TabHost)findViewById(R.id.tabHost);
tabHost.setup();
Test testObj = new Test(this);
spec2=tabHost.newTabSpec("Tab 2");
spec2.setIndicator("Tab 2");
spec2.setContent(testObj);

并且每个视图都分配给一个实现 TabFactory 的视图。

public class Test implements TabContentFactory {
@Override
public View createTabContent(String arg0) {

    v = mInflater.inflate(R.layout.activity_tab1, null);

    /**
     * Add your code here for buttons/list etc
     * An object lookup for your Button: 
     */
    b = (Button)v.findViewById(R.id.button1);

    b.setOnClickListener(this);
    return v;
}
public void setListViewNames() {
   //create a custom list view
}
public void setDetailedView() {
   //opens another detailed view when user clicks on any item on the list
   //here i use ViewGroup to remove the first view created in setListViewNames()
}
}

单击按钮时,将创建一个 listView。单击任何项​​目将转到另一个列表视图。第一个 listView 被删除为:

ViewGroup viewGroup = (ViewGroup) v.getParent();
viewGroup.removeView(v);
View v1 = mInflater.inflate(R.layout.custom_fullpicture, null);
viewGroup.addView(v1);

但是当我转到选项卡一然后单击选项卡二时,会引发以下错误。

E/AndroidRuntime(1668): at android.widget.TabHost$FactoryContentStrategy.tabClosed        
(TabHost.java:658)

如何有效地在选项卡中导航?每次单击时,我都找不到重新加载选项卡视图的方法。

有什么想法吗?

提前致谢!

4

0 回答 0