TabLayout+ViewPager
来源:互联网 发布:张益唐莫宗坚恩怨知乎 编辑:程序博客网 时间:2024/05/18 01:39
tabLayout横向滑动菜单,使用的时候要导入依赖“”design“”
导入依赖的时候可能会有版本号不一致的错误,这个时候
1.把当前应用中的build.grandle下面的版本号改成一致
2.在build.grandle中的任意位置放入这段代码就可以了。
configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == 'com.android.support') { if (!requested.name.startsWith("multidex")) { details.useVersion '25.3.0' } } }}
使用TabLayout+ViewPager联动,首先在xml文件中进行布局
,在代码中进行设施,和设置适配器,关联起来
XML文件
<?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"><!-- app:tabGravity="center" 对齐方式,可选fill和center app:tabIndicatorColor="@color/colorAccent" 设置tab下划线的颜色 app:tabMode="scrollable" scrollable是可以横行滚动,fixed是指固定个数 app:tabSelectedTextColor="@color/colorPrimaryDark" 选择tab的文本颜色 app:tabTextColor="@color/colorPrimary" 普通tab字体颜色 --> <android.support.design.widget.TabLayout android:id="@+id/tab_layout" android:layout_width="match_parent" android:layout_height="wrap_content" app:tabGravity="fill" app:tabIndicatorColor="@color/colorAccent" app:tabMode="fixed" app:tabSelectedTextColor="@color/colorPrimaryDark" app:tabTextColor="@color/colorPrimary" /> <android.support.v4.view.ViewPager android:id="@+id/vp" android:layout_width="match_parent" android:layout_height="match_parent"></android.support.v4.view.ViewPager></LinearLayout>
java文件中,创建一个集合,存放导航栏的菜单信息,再创建一个集合,存放ViewPager的信息,进行关联
package baseFragment;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.design.widget.TabLayout;import android.support.v4.app.Fragment;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import java.util.ArrayList;import java.util.List;import wangxuewei.bwie.com.week3.R;/** * Created by jim on 2017/10/21. */public class Fr_ShouYe extends Fragment { private List<String> tab_list; private List<Fragment> fr_list; private TabLayout tab_layout; private ViewPager vp; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View inflate = inflater.inflate(R.layout.fr_shouye, null); tab_layout = (TabLayout) inflate.findViewById(R.id.tab_layout); vp = (ViewPager) inflate.findViewById(R.id.vp); //设置tab的值 initTab(); return inflate; } private void initTab() { tab_list = new ArrayList<>(); tab_list.add("推荐"); tab_list.add("课程"); tab_list.add("实战"); tab_list.add("职业路径"); fr_list = new ArrayList<>(); //存放的是数据类型是Fragment fr_list.add(new Tab_Tuijian()); fr_list.add(new Tab_KeCheng()); fr_list.add(new Tab_ShiZhan()); fr_list.add(new Tab_ZhiYeLuJing()); } @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); //设置适配器 vp.setAdapter(new TabAdapter(getChildFragmentManager())); //进行关联 tab_layout.setupWithViewPager(vp); //显示的页数 vp.setOffscreenPageLimit(fr_list.size()); } //适配器 class TabAdapter extends FragmentPagerAdapter { public TabAdapter(FragmentManager fm) { super(fm); } @Override public CharSequence getPageTitle(int position) { return tab_list.get(position); } @Override public Fragment getItem(int position) { return fr_list.get(position); } @Override public int getCount() { return fr_list.size(); } }}
阅读全文
1 0
- ViewPager+TabLayout
- Viewpager+Tablayout
- TabLayout+ViewPager
- TabLayout+ViewPager
- TabLayout+viewPager
- ViewPager+TabLayout
- Tablayout+viewpager
- TabLayout +ViewPager
- tablayout+viewpager
- Tablayout + viewpager
- Tablayout+viewpager
- TabLayout+ViewPager
- Tablayout+Viewpager
- Tablayout+Viewpager
- Tablayout+viewpager
- tablayout +viewpager
- Inflater&TabLayout&ViewPager
- ViewPager + Fragment + TabLayout
- python文件相关操作总结
- 欢迎使用CSDN-markdown编辑器
- Oracle数据文件占用空间释放resize
- $.each()与$(selector).each()
- C# winform 中MessageBox用法大全(附效果图)
- TabLayout+ViewPager
- java.sql.SQLException: 无效的列索引
- 属性动画
- c++ inline函数
- python编码解码
- LeetCode139. Word Break
- 记录Hacker学习发展图
- [CodeVs 1063] 合并果子 ——小根堆
- 51nod 1186 质数检测 V2