Android中怎么使用viewpager滑动指示器
发表于:2024-10-10 作者:千家信息网编辑
千家信息网最后更新 2024年10月10日,这篇文章主要介绍"Android中怎么使用viewpager滑动指示器",在日常操作中,相信很多人在Android中怎么使用viewpager滑动指示器问题上存在疑惑,小编查阅了各式资料,整理出简单好
千家信息网最后更新 2024年10月10日Android中怎么使用viewpager滑动指示器
这篇文章主要介绍"Android中怎么使用viewpager滑动指示器",在日常操作中,相信很多人在Android中怎么使用viewpager滑动指示器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Android中怎么使用viewpager滑动指示器"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
工程目录:
1. MainActivity.java
public class MainActivity extends FragmentActivity { private ViewPagerFrameAdapter adapter; //适配器(标题和内容) private ViewPager mPager; private TabPageIndicator tabbPageIndicator; // private UnderlinePageIndicatorEx underlinePageIndicator; private int COUNT = 0; private Listtitles = new ArrayList (); //标题 @Override protected void onCreate(Bundle bundle) { super.onCreate(bundle); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); //标题,这里自己造的假数据 for (int j = 0; j < 3 ; j++){ titles.add( "第"+ j +"标签卡"); } mPager = (ViewPager)findViewById(R.id.pager); adapter = new ViewPagerFrameAdapter(getSupportFragmentManager(),titles); mPager.setAdapter(adapter); //得到指示器 tabbPageIndicator = (TabPageIndicator) findViewById(R.id.tab_indicator); tabbPageIndicator.setViewPager(mPager); //下标 underlinePageIndicator = (UnderlinePageIndicatorEx)findViewById(R.id.underline_indicator); underlinePageIndicator.setViewPager(mPager); underlinePageIndicator.setFades(false); //设置指示器 tabbPageIndicator.setOnPageChangeListener(underlinePageIndicator); } //adapter 没啥好说的 跟前面的一样 private class ViewPagerFrameAdapter extends FragmentStatePagerAdapter{ private List title; //页面标题头部数据 public ViewPagerFrameAdapter(FragmentManager fm, List title) { super(fm); this.title = title; } //根据position 返回 fragment @Override public Fragment getItem(int position) { return ArrayFragment.newInstance(position); } //size @Override public int getCount() { return title.size(); } //顶部的title @Override public CharSequence getPageTitle(int position) { if (titles != null){ return titles.get(position).toString(); } return super.getPageTitle(position); } } }
UnderlinePageIndicatorEx.java
//继承这个然后重写 public class UnderlinePageIndicatorEx extends UnderlinePageIndicator{ public UnderlinePageIndicatorEx(Context context) { super(context, null); } public UnderlinePageIndicatorEx(Context context, AttributeSet attrs) { super(context, attrs, R.attr.vpiUnderlinePageIndicatorStyle); } public UnderlinePageIndicatorEx(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } //自身的 ViewPage传递过去 @Override public void setViewPager(ViewPager viewPager) { if (mViewPager == viewPager){ return; } // if (mViewPager != null) { // mViewPager.setOnPageChangeListener(null); // } if (viewPager.getAdapter() == null) { throw new IllegalStateException(" pager 没有 加入 adapter"); } mViewPager = viewPager; // mViewPager.setOnPageChangeListener(this); invalidate(); post(new Runnable(){ @Override public void run() { if (mFades) { post(mFadeRunnable); } } }); } }
ArrayFragment.java
public class ArrayFragment extends Fragment{ private int position; public ArrayFragment(int position){ this.position = position; } // 返回 viwePager 下面滑动的页面 public static ArrayFragment newInstance(int position){ return new ArrayFragment(position); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public void onDestroy() { super.onDestroy(); } // 根据position 返回不同的view @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.layoutaa, null); return view; } }
好了接下来是 布局xml了。
接下来设置 滑动指示器的style
selector_tab.xml 这个是 选择器 在style中引用的,是用来切换 被选中的背景色的
到此,关于"Android中怎么使用viewpager滑动指示器"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
指示
指示器
标题
学习
接下来
数据
更多
页面
帮助
不同
好说
实用
下标
内容
头部
工程
布局
文章
方法
标签
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何设置服务器指定7天重启一次
开展网络安全交流会目的
工商局网络安全应急演练
上海移动软件开发机构
软件开发哪个方面比较有前途
软件开发在哪里可以学化妆
网络安全模式下不能联网
丰润区信息网络技术不二之选
怎么维护云服务器安全
本地数据库搭建access
hp服务器的iLO口地址
湖南省高职计算机网络技术教材
app手机软件开发服务方案报价
网络技术在电影中应用
metinfo数据库
网络安全执法检查图解
无线连接是网络安全密钥
我的世界琉璃日月服务器极巨汤
苹果手机显示服务器出错无法注册
服务器租用待遇
描写网络安全好句子
ice和mn服务器哪个好
互联网科技创投
中型医院网络安全方案
幻塔无法连接服务器更新不了
tcia数据库与TCGA
临床预后数据库
计算机网络技术 书
学哪个软件开发技术入门快
ICL软件开发公司