TabLayout+ViewPage导航栏
来源:互联网 发布:分类别思维知乎 编辑:程序博客网 时间:2024/05/01 08:36
一:添加依赖
compile 'com.android.support:design:xx.1.1'
二:布局代码
<?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" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <android.support.v4.view.ViewPager android:id="@+id/viewPager" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:scrollbars="none"/> <android.support.design.widget.TabLayout android:id="@+id/tabLayout" android:layout_width="match_parent" android:layout_height="50dp" app:tabGravity="fill" app:tabIndicatorHeight="0dp" app:tabMode="fixed" app:tabSelectedTextColor="#FF4081" app:tabTextColor="#000"/></LinearLayout>
三:创建Fragment。例子
public class FragmentOne extends Fragment { @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_one, container, false); return view; }}
布局:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <TextView android:id="@+id/text" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:text="12311" /></LinearLayout>
四:viewpage 设置Adapter(FragmentPageAdapter)
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { private String[] mTitle = new String[]{"111", "222", "333", "444"}; @Override public Fragment getItem(int position) { switch (position) { case 1: return new FragmentTwo(); case 2: return new FragmentThree(); case 3: return new FragmentFour(); } return new FragmentOne(); } @Override public int getCount() { return mTitle.length; } @Override public CharSequence getPageTitle(int position) { return mTitle[position]; } });
五:tablayout和viewpage进行关联
tabLayout.setupWithViewPager(viewPager); one = tabLayout.getTabAt(0); two = tabLayout.getTabAt(1); three = tabLayout.getTabAt(2); four = tabLayout.getTabAt(3); one.setIcon(getResources().getDrawable(R.drawable.one)); two.setIcon(getResources().getDrawable(R.drawable.one)); three.setIcon(getResources().getDrawable(R.drawable.one)); four.setIcon(getResources().getDrawable(R.drawable.one));
activity完整:
public class MainActivity extends AppCompatActivity { private TabLayout tabLayout; private ViewPager viewPager; private TabLayout.Tab one, two, three, four; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initViews(); } private void initViews() { tabLayout = (TabLayout) findViewById(R.id.tabLayout); tabLayout.setTabMode(TabLayout.MODE_FIXED); viewPager = (ViewPager) findViewById(R.id.viewPager); viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) { private String[] mTitle = new String[]{"111", "222", "333", "444"}; @Override public Fragment getItem(int position) { switch (position) { case 1: return new FragmentTwo(); case 2: return new FragmentThree(); case 3: return new FragmentFour(); } return new FragmentOne(); } @Override public int getCount() { return mTitle.length; } @Override public CharSequence getPageTitle(int position) { return mTitle[position]; } }); tabLayout.setupWithViewPager(viewPager); one = tabLayout.getTabAt(0); two = tabLayout.getTabAt(1); three = tabLayout.getTabAt(2); four = tabLayout.getTabAt(3); one.setIcon(getResources().getDrawable(R.drawable.one)); two.setIcon(getResources().getDrawable(R.drawable.one)); three.setIcon(getResources().getDrawable(R.drawable.one)); four.setIcon(getResources().getDrawable(R.drawable.one)); }}
0 0
- TabLayout+ViewPage导航栏
- TabLayout顶部导航栏+ViewPage实现联动
- Tablayout+Viewpage
- TabLayout+ViewPage
- TabLayout+ViewPage
- TabLayout 滑动导航栏
- TabLayout实现导航栏
- tablayout底部导航栏
- tablayout导航栏
- Tablayout显示导航栏
- Tablayout实现导航栏
- TabLayout导航栏
- TabLayout和Viewpage连用
- tablayout+viewpage框架
- TabLayout与ViewPage联用
- Android使用TabLayout、ViewPage和Fragment实现导航条的效果
- TabLayout实现滑动导航栏
- TabLayout实现底部导航栏
- 文章标题
- YII之片段缓存
- Hinge loss
- 类对象和类的对象的区别
- 把时间当作朋友(写给自己的摘抄小记)
- TabLayout+ViewPage导航栏
- hibernate缓存
- Xcode添加全局断点的方法
- Java多用户商城系统B2B2C源码
- 数据结构实验之二叉树的建立与遍历
- 如何用maven创建spring mvc项目
- ajax调用后台实现文件下载,不弹出下载提示框,无法下载
- log4j和log4j2
- 【机器学习基础】VC维与模型复杂度、样本复杂度