android TabLayout的应用

本文介绍了一个用于黑名单设置的Android Activity实现。该Activity使用了TabActivity并集成了两个标签页,分别用于显示按天和按间隔的黑名单设置。通过示例代码展示了如何创建TabHost、添加TabSpec,并设置相应的视图和适配器。

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

不多说直接上代码:

/** * */ package org.xiangjie.view.blacklist; import org.xiangjie.R; import android.app.TabActivity; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.widget.ArrayAdapter; import android.widget.FrameLayout; import android.widget.ListView; import android.widget.TabHost; import android.widget.TabHost.OnTabChangeListener; /** * @author jie.xiang * */ public class BlacklistSettingActivity extends TabActivity implements OnTabChangeListener { private final static String TAG = "Blacklist Setting"; private ListView intervalView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addTabs(); } private void addTabs() { TabHost mTabHost = getTabHost(); /** * TabHost must be depend on FrameLayout */ FrameLayout frameLayout = (FrameLayout) LayoutInflater.from(this) .inflate(R.layout.blacklistsetting, mTabHost.getTabContentView(), true); frameLayout.addView(LayoutInflater.from(this).inflate( R.layout.blacklistintervalsetting, null, false)); intervalView = (ListView) frameLayout.findViewById(R.id.daylist); intervalView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice, getResources().getStringArray(R.array.week_values))); mTabHost.addTab(mTabHost .newTabSpec("Tab_1") .setIndicator( getResources().getString(R.string.day_menu_setting), getResources().getDrawable(R.drawable.ic_menu_edit)) .setContent(R.id.widget_layout_day)); mTabHost.addTab(mTabHost .newTabSpec("Tab_2") .setIndicator( getResources() .getString(R.string.interval_menu_setting), getResources().getDrawable(R.drawable.ic_menu_edit)) .setContent(R.id.inervalsetting)); } @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.setting, menu); return super.onCreateOptionsMenu(menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.edit: doSave(); case R.id.cancel: finish(); break; } return super.onOptionsItemSelected(item); } private void doSave() { Log.i(TAG, "Blacklist setting page has been saved!"); } @Override public void onTabChanged(String tabId) { } }

<?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <LinearLayout android:id="@+id/widget_layout_day" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <ListView android:id="@+id/daylist" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> </FrameLayout>

效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值