文档章节

PagerSlidingTabStrip介绍及使用

m
 miao了个咪
发布于 2016/07/29 09:13
字数 557
阅读 7
收藏 0
点赞 0
评论 0

PagerSlidingTabStrip介绍及使用

1.加入library作为本地包工程,或者加入依赖在build.gradle(我对gradle不是很了解,所以用前面那个导入包的方法) dependencies { compile 'com.astuetz:pagerslidingtabstrip:1.0.1' }

2.在你的layout里加入PagerSlidingTabStrip控件,它通常要在ViewPager控件之上 <com.astuetz.PagerSlidingTabStrip android:id="@+id/tabs" android:layout_width="match_parent" android:layout_height="48dip" />

3.在你的onCreate方法(或者onCreateView对于一个fragment),绑定PagerSlidingTabStrip控件到ViewPager上 // 初始化ViewPager并且添加适配器 ViewPager pager = (ViewPager) findViewById(R.id.pager); pager.setAdapter(new TestAdapter(getSupportFragmentManager()));

//向ViewPager绑定PagerSlidingTabStrip
PagerSlidingTabStrip tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs); tabs.setViewPager(pager);

4.(可选的)如果你想在你的ViewPager用到onPageChangeListener监听方法,你应该如下设置,而不是直接用ViewPager设置 // 从上面继续 tabs.setOnPageChangeListener(mPageChangeListener);

个性化设置 为了让你的app不像另一个 Play Store上面的app,你可以添加这些属性来做出自己独具一格的应用。 pstsIndicatorColor Color of the sliding indicator 滑动条的颜色 pstsUnderlineColor Color of the full-width line on the bottom of the view 滑动条所在的那个全宽线的颜色 pstsDividerColor Color of the dividers between tabs 每个标签的分割线的颜色 pstsIndicatorHeightHeight of the sliding indicator 滑动条的高度 pstsUnderlineHeight Height of the full-width line on the bottom of the view 滑动条所在的那个全宽线的高度 pstsDividerPadding Top and bottom padding of the dividers 分割线底部和顶部的填充宽度 pstsTabPaddingLeftRight Left and right padding of each tab 每个标签左右填充宽度 pstsScrollOffset Scroll offset of the selected tab pstsTabBackground Background drawable of each tab, should be a StateListDrawable 每个标签的背景,应该是一个StateListDrawable pstsShouldExpand If set to true, each tab is given the same weight, default false 如果设置为true,每个标签是相同的控件,均匀平分整个屏幕,默认是false pstsTextAllCaps If true, all tab titles will be upper case, default true 如果为true,所有标签都是大写字母,默认为true 所有的属性都有他们自己的getter和setter方法来随时改变他们 1. tabs = (PagerSlidingTabStrip) findViewById(R.id.tabs);
2. pager = (ViewPager) findViewById(R.id.pager);
3. adapter = new MyPagerAdapter(getSupportFragmentManager());
4. pager.setAdapter(adapter);
5.
6. tabs.setViewPager(pager); 7. public class MyPagerAdapter extends FragmentPagerAdapter {
8.
9. private final String[] TITLES = { "Categories", "Home", "Top Paid", "Top Free", "Top Grossing", "Top New Paid",
10. "Top New Free", "Trending" };
11.
12. public MyPagerAdapter(FragmentManager fm) {
13. super(fm);
14. }
15.
16. @Override
17. public CharSequence getPageTitle(int position) {
18. return TITLES[position];
19. }
20.
21. @Override
22. public int getCount() {
23. return TITLES.length;
24. }
25.
26. @Override
27. public Fragment getItem(int position) {
28. return SuperAwesomeCardFragment.newInstance(position);
29. }
30.
31. }

© 著作权归作者所有

共有 人打赏支持
m
粉丝 2
博文 10
码字总数 3187
作品 0
海淀
Android实用视图动画及工具系列之七:可定制Tab标签栏,ViewPaper和Fragment滑动标签视图

实现效果 功能说明 本视图工具根据PagerSlidingTabStrip改编优化,修复了部分Bug和增加了更多自定义选项,让PagerSlidingTabStrip变得更漂亮实用。关于PagerSlidingTabStrip,它是配合ViewP...

jaikydota163 ⋅ 2016/08/02 ⋅ 0

Android实用视图动画及工具系列之八:带头部的Viewpaper,结合头部的Fragment切换效果

实现效果 功能说明 如果需要在Viewpaper中增加一个头部,让头部在Viewpaper在向下滑动时隐藏,向上滑动时推出,这种情况Android的原生控件便无法满足我们想要的需求,于是我们自己来编写个可...

jaikydota163 ⋅ 2016/08/02 ⋅ 0

fragment中你是如何使用PagerSlidingTabStrip的?

就像哎嘛 下面是FragmentTabHost控制的Fragment,这几个小Fragment里面就用到PagerSlidingTabStrip了,又控制展示了3个小Fragment,这个是怎么做的?...

大风厂蔡成功 ⋅ 2014/11/08 ⋅ 1

Android TabLayout 库--FlycoTabLayout

FlycoTabLayout 是一个 Android TabLayout 库,目前有两个 TabLayout。 SlidingTabLayout:参照 PagerSlidingTabStrip 进行大量修改。 新增部分属性 新增支持多种 Indicator 显示器 新增支持...

孔小菜 ⋅ 2015/11/11 ⋅ 1

Android库和项目收集-ViewPager

PagerSlidingTabStrip 效果图: ViewPagerCards 效果图: InfiniteCycleViewPager DEMO地址 效果图: MagicIndicator 强大、可定制、易扩展的 ViewPager 指示器框架 效果图:...

3kqing ⋅ 2016/09/07 ⋅ 0

我从网上下的代码,人家的.xml文件中有,放activity的包叫com.abc.sample,如果我想用他的代码,除了粘贴activity和布局文件还需要配置什么

我从网上下的代码,人家的.xml文件中有,放activity的包叫com.abc.sample,如果我想用他的代码,除了粘贴activity和布局文件还需要配置什么求大神帮忙

傲儿our ⋅ 2014/10/12 ⋅ 2

V2EX社区客户端--V2EX-android

V2EX-android 即 V2EX社区客户端。 支持功能 话题查看 节点查看和按字母搜索 用户资料查看 话题回复 话题创建 未读提醒查看 其他功能 实现了节点、话题、用户三个Scheme,通过话题、节点、用户...

大胖森 ⋅ 2015/05/20 ⋅ 2

Android开发——Toolbar组件用法详解

本文重点讲述Android Toolbar的用法,包括它的一些概念和注意事项,现在总结出来分享给Android程序员兄弟们。本文的例子都是基于Android5.0+。 Toolbar Toolbar是什么?大概说一下它的官方介...

Erichkko ⋅ 2015/12/02 ⋅ 0

使用android support library中的tablayout实现页签切换效果出现的问题

Tablayout出现之前,由于google不再推荐使用tabActivity来实现页签切换的效果,或是那种页签切换满足不了我们实际的使用要求,因此出现了第三方的库:PagerSlidingTabStrip,viewpagerindica...

我家有宝 ⋅ 2015/11/24 ⋅ 4

Git上Star项目的总结

文章 1、AndroidStudio AndroidStudio 《AndroidStudio实用指南》是老毕的新书,从2015年5月初开始在百度阅读上陆续更新. 2、android-best-practices android-best-practices Android开发最佳...

Mobile-DEV彬 ⋅ 2016/03/30 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Linux kernel脉络和主干总结

写在前面 前人常说,对Linux操作系统/内核的理解,是计算机行业从业者的内功,决定了你在技术领域想走多远。但内核的庞大以及学习曲线之陡峭,总让我在学习途中觉得犹如“管中窥豹”。 随着工...

Markz0928 ⋅ 28分钟前 ⋅ 0

在gcc中使用intel风格的内联汇编

很简单,内联汇编使用asm(“.intel_syntax noprefix/n”)声明一下,以后的内联汇编就可以用intel风格了,构建可执行文件时给gcc加上-masm=intel参数。 先写一个小程序测试一下: [cpp] view...

simpower ⋅ 38分钟前 ⋅ 0

NIO 之 ByteBuffer实现原理

相关文章 BIO、NIO、AIO 内部原理分析 NIO 之 Selector实现原理 NIO 之 Channel实现原理 前言 Java NIO 主要由下面3部分组成: Buffer Channel Selector 在传统IO中,流是基于字节的方式进行...

轨迹_ ⋅ 48分钟前 ⋅ 0

Jenkins docker权限问题

环境Ubuntu Server 工具 jenkins-war:2.89.2 报错信息 Cannot connect to the Docker daemon. Is the docker daemon running on this host?Build step 'Execute shell' marked build as fai......

Pulsar-V ⋅ 48分钟前 ⋅ 0

180621-一个简单的时间窗口设计与实现

如何设计一个计数的时间窗口 时间窗口,通常对于一些实时信息展示中用得比较多,比如维持一个五分钟的交易明细时间窗口,就需要记录当前时间,到五分钟之前的所有交易明细,而五分钟之前的数...

小灰灰Blog ⋅ 今天 ⋅ 0

Android之Dalvik、ART、JIT、AOT

Android之Dalvik、ART、JIT、AOT 本文内容:Dalvik、ART、JIT、AOT之间关系 本文定位:知识记录 学习过程记录,加深理解,提升文字组合表达能力。也希望能给学习的同学一些灵感 本文整理于[...

lichuangnk ⋅ 今天 ⋅ 0

Thrift RPC实战(五) thrift连接池

Thrift本身没有提供连接池,我们可以用Apache Commons Pool2来实现一个 一、定义对象工厂 BasePooledObjectFactory<T> extends BaseObject implements PooledObjectFactory<T> public class......

lemonLove ⋅ 今天 ⋅ 0

git 命令简写

简写 命令 g git gst git status gd git diff gdc git diff --cached gdv git diff -w "$@" | view - gl git pull gup git pull --rebase gp git push gc git commit -v gc! git commit -v ......

charley158 ⋅ 今天 ⋅ 0

Java中的锁使用与实现

1.Lock接口 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源。 在Lock出现之前,java程序是靠synchronized关键字实现锁功能的,而Java SE5之后,...

ZH-JSON ⋅ 今天 ⋅ 0

Intellij IDEA神器常用技巧四-类和方法注释模板设置

IDEA自带的注释模板不是太好用,我本人到网上搜集了很多资料系统的整理了一下制作了一份比较完整的模板来分享给大家,我不是专业玩博客的,写这篇文章只是为了让大家省事。 这里设置的注释模...

Mkeeper ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部