TabLayout选项卡
来源:互联网 发布:知乎网源码 编辑:程序博客网 时间:2024/05/10 00:44
1.介绍
TabLayout 是Google在2015年I/O大会上推出的一款选项卡控件,功能与TabPageIndicator类似,可以兼容到Android2.1及以上版本。
效果图如下:
2.使用方法
在build.gradle文件中加上这段代码:
compile 'com.android.support:design:22.2.0'
public class TabLayoutActivity extends AppCompatActivity { @Bind(R.id.tab) TabLayout tab; @Bind(R.id.vp_view) ViewPager vpView; private LayoutInflater layoutInflater; //页卡标题集合 private List<String> titleList = new ArrayList<>(); //页卡视图 private View view; //页卡视图集合 private List<View> viewList = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tab_layout); ButterKnife.bind(this); initView(); } private void initView() { layoutInflater = LayoutInflater.from(this); //设置tab模式,当前为系统默认模式 tab.setTabMode(TabLayout.MODE_SCROLLABLE); //添加页卡标题 titleList.add("标题一"); titleList.add("标题二"); titleList.add("标题三"); titleList.add("标题四"); titleList.add("标题五"); titleList.add("标题六"); for (int i = 0; i <= 5; i++) { view = layoutInflater.inflate(R.layout.activity_tab_item, null); //添加页卡视图 viewList.add(view); //添加tab选项卡 tab.addTab(tab.newTab().setText(titleList.get(i))); } TabAdapter tabAdapter = new TabAdapter(viewList); vpView.setAdapter(tabAdapter); //将TabLayout和ViewPager关联起来。 tab.setupWithViewPager(vpView); //给Tabs设置适配器 tab.setTabsFromPagerAdapter(tabAdapter); } class TabAdapter extends PagerAdapter { private List<View> viewList; public TabAdapter(List<View> viewList) { this.viewList = viewList; } @Override public int getCount() { return viewList.size(); } @Override public boolean isViewFromObject(View view, Object object) { return view == object; } @Override public Object instantiateItem(ViewGroup container, int position) { //添加页卡 container.addView(viewList.get(position)); return viewList.get(position); } @Override public void destroyItem(ViewGroup container, int position, Object object) { //删除页卡 container.removeView(viewList.get(position)); } @Override public CharSequence getPageTitle(int position) { //页卡标题 return titleList.get(position); } }}
布局文件
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.design.widget.TabLayout android:id="@+id/tab" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabIndicatorColor="@color/color_2F9DD2" app:tabSelectedTextColor="@color/color_2F9DD2" app:tabTextColor="@color/color_333333" /> <android.support.v4.view.ViewPager android:id="@+id/vp_view" android:layout_width="match_parent" android:layout_height="match_parent" /></LinearLayout>
GitHub地址:https://github.com/alidili/DesignSupportDemo
3 0
- TabLayout选项卡
- 使用TabLayout 实现顶部选项卡功能
- Android使用TabLayout实现选项卡
- Android——TabLayout实现选项卡
- Tablayout+Fragment顶部选项卡实现
- 总结项目使用一个TabLayout选项卡
- Android选项卡TabLayout简单使用
- TabLayout+Fragment实现顶部选项卡
- TabLayout默认某个选项卡选中
- 两种实现选项卡功能----自定义和TabLayout
- 使用TabLayout和ViewPager实现左右滑动选项卡
- Android TabLayout(选项卡布局)简单用法实例分析
- TabLayout的自定义实现选项卡背景的滑动动画
- Android学习笔记(七)--滑动选项卡TabLayout
- TabLayout的自定义实现选项卡背景的滑动动画
- 自定义TabLayout,实现神奇的选项卡效果
- 使用Android Support Design 控件TabLayout 方便快捷实现选项卡功能
- Android Material Design:滑动指示选项卡android.support.design.widget.TabLayout的简单使用
- HTTP状态码大全
- Ajax请求Session超时问题
- Linux环境上Redis的安装和配置
- 云计算的三种服务模式:IaaS,PaaS和SaaS
- 一名程序媛的IT资源整理
- TabLayout选项卡
- 良好性能和高质量视觉效果
- Linux下修改Tomcat默认端口
- redis 常用命令行
- 几句话实现导航栏透明渐变-iOS
- 拯救少林神棍 代码有注释
- error C2275 将此类型用作表达式非法
- linux sed学习总结
- RMQ模板