繁体   English   中英

Android:使用TabHost以编程方式创建View

[英]Android: Using TabHost with programmatically created View

我想创建标签,显示我通过代码创建的某些视图。 现在我可以将View传递给TabHost,但只能通过id传递。

所以我试着给我的编程创建视图分配一些随机ID,比如说1001 -

TabHost th = getTabHost();
View v=getMyView(); v.setId(1001);
th.addTab(th.newTabSpec("tab1").setIndicator("Monthly").setContent(v.getId()));

当我运行此消息时,我得到一个强制关闭,没有视图号1001。

有没有其他方法可以在TabHost或标签界面中使用我自己生成的视图?

您需要使用带有TabHost.TabContentFactory的重载setContent()方法的版本

th.addTab(th.newTabSpec("tab1")
    .setIndicator("Monthly")
    .setContent(new TabHost.TabContentFactory() {
        @Override
        public View createTabContent(String tag) {
            if (tag.equals("tab1")) {
                return getMyView();
            }
            return null;
        }));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM