Andorid入门之TabHost(纯java)

本文展示了如何将普通的Activity嵌入到TabHost中,并通过TabWidget和FrameLayout实现Tab切换效果。代码实例包括创建TabHost、设置布局参数、添加Tab和内容视图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

无需xml,也不是TabActivity,就是普通的Activity。

这样的tabHost可以嵌入到其他View中,如LinearLayout、RelativeLayout等。

 

        tabHost=new TabHost(this);
        LinearLayout.LayoutParams lp_tabHost=new LinearLayout.LayoutParams( -1,-1);
        tabHost.setLayoutParams(lp_tabHost);
        
        tabWidget=new TabWidget(this);
        tabWidget.setId(android.R.id.tabs);
        tabWidget.setLayoutParams(new LinearLayout.LayoutParams(-1,-2));
        
        fl=new FrameLayout(this);
        fl.setId(android.R.id.tabcontent);
        fl.setLayoutParams(new LinearLayout.LayoutParams(-1,-2));
        
        TextView tv1=new TextView(this);
        tv1.setId(59);
        tv1.setText("hello1");
        
        TextView tv2=new TextView(this);
        tv2.setId(60);
        tv2.setText("hello2");
        
        fl.addView(tv1);
        fl.addView(tv2);
        
        LinearLayout mainView=new LinearLayout(this);
        LinearLayout.LayoutParams lp_mainView=new LinearLayout.LayoutParams(-1,-1);
        mainView.setLayoutParams(lp_mainView);
        mainView.setOrientation(LinearLayout.VERTICAL);
        mainView.setGravity(Gravity.TOP);
        
        mainView.addView(tabWidget);
        mainView.addView(fl);
        
        tabHost.addView(mainView);
        tabHost.setup();
        
        tabHost.addTab(tabHost.newTabSpec("tag1").setIndicator("indicator1").setContent(59));
        tabHost.addTab(tabHost.newTabSpec("tag2").setIndicator("indicator2").setContent(60));
        
        setContentView(tabHost);


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李工电子说

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值