• PagerTabStrip:可以点击跳转到对应viewPager界面
  • PagerTitleStrip:不可点击
  • 在eclipse开发时如果目标版本为API23那么会有不显示的问题

    • 解决:更换v4包
    • 解决: 在Activiry的oncreate方法中添加如下代码

      ((ViewPager.LayoutParams) tabStrip.getLayoutParams()).isDecor = true;

      (我试了下我的不行但网上有说可以)

    • studio开发貌似可以
  • 文件结构:

MainActivity.java

package com.qf.day21_fragmentpagertabstrip_demo2;import java.util.ArrayList;
import java.util.List;import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerTabStrip;
import android.support.v4.view.PagerTitleStrip;
import android.support.v4.view.ViewPager;
import android.view.Menu;public class MainActivity extends FragmentActivity {private PagerTabStrip pagerTabStrip;private PagerTitleStrip pagerTitleStrip;private ViewPager viewPager;private List<Fragment> list = new ArrayList<Fragment>();private String[] titles ={"新闻","娱乐","军事","体育"};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);viewPager = (ViewPager) findViewById(R.id.viewPager);//pagerTabStrip = (PagerTabStrip) findViewById(R.id.pagertabStrip);initData();//setPagertabStrip();viewPager.setAdapter(new MyFragmentpagerAdapter(getSupportFragmentManager()));}/*** 设置书签*/public void setPagertabStrip(){//设置文本颜色pagerTabStrip.setTextColor(Color.RED);//设置指示线颜色pagerTabStrip.setTabIndicatorColor(Color.BLUE);//设置背景颜色pagerTabStrip.setBackgroundColor(Color.GREEN);//设置是否完整绘制底线pagerTabStrip.setDrawFullUnderline(false);}//初始化数据源public void initData(){for(int i=0;i<4;i++){MyFragment myFragment = MyFragment.getInstance(i+1);list.add(myFragment);}}public class MyFragmentpagerAdapter extends FragmentPagerAdapter{public MyFragmentpagerAdapter(FragmentManager fm) {super(fm);// TODO Auto-generated constructor stub}@Overridepublic Fragment getItem(int arg0) {// TODO Auto-generated method stubreturn list.get(arg0);}@Overridepublic int getCount() {// TODO Auto-generated method stubreturn list.size();}//设置书签内容@Overridepublic CharSequence getPageTitle(int position) {// TODO Auto-generated method stubreturn titles[position];}}}

MyFragment.java

package com.qf.day21_fragmentpagertabstrip_demo2;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.ListFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.SimpleAdapter;
import android.widget.TextView;public class MyFragment extends ListFragment {private  TextView tvShow;private int index =0;public static MyFragment getInstance(int index){MyFragment myFragment = new MyFragment();Bundle args = new Bundle();args.putInt("index", index);myFragment.setArguments(args);return myFragment;}@Overridepublic void onAttach(Activity activity) {// TODO Auto-generated method stubsuper.onAttach(activity);Bundle bundle = getArguments();if(bundle!=null){index = bundle.getInt("index");}}@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);}@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {// TODO Auto-generated method stubView v = inflater.inflate(R.layout.fragment_layout, container, false);tvShow = (TextView) v.findViewById(R.id.tv_show);return v;}@Overridepublic void onActivityCreated(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onActivityCreated(savedInstanceState);switch (index) {case 1:tvShow.setText("您点击了书签1");break;case 2:tvShow.setText("您点击了书签2");break;case 3:tvShow.setText("您点击了书签3");break;case 4:tvShow.setText("您点击了书签4");break;default:break;}SimpleAdapter adapter = new SimpleAdapter(getActivity(), loadNetWorkData(), R.layout.item, new String[]{"icon","title","content"}, new int[]{R.id.iv_item,R.id.title_item,R.id.content_item});setListAdapter(adapter);}/*** 假设从网络获取数据* @return*/private List<Map<String,Object>> loadNetWorkData(){List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();for(int i=0;i<20;i++){Map<String, Object> map = new HashMap<String, Object>();map.put("icon", R.drawable.ic_launcher);map.put("title", "郭XX大战曹XXX"+i+"tab"+index);map.put("content", "降龙十八掌赢"+i+"tab"+index);list.add(map);}return list;}@Overridepublic void onStart() {// TODO Auto-generated method stubsuper.onStart();}@Overridepublic void onResume() {// TODO Auto-generated method stubsuper.onResume();}@Overridepublic void onPause() {// TODO Auto-generated method stubsuper.onPause();}@Overridepublic void onStop() {// TODO Auto-generated method stubsuper.onStop();}@Overridepublic void onDestroyView() {// TODO Auto-generated method stubsuper.onDestroyView();}@Overridepublic void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();}@Overridepublic void onDetach() {// TODO Auto-generated method stubsuper.onDetach();}}

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><android.support.v4.view.ViewPager
        android:id="@+id/viewPager"android:layout_width="match_parent"android:layout_height="match_parent"><!--   <android.support.v4.view.PagerTabStripandroid:id="@+id/pagertabStrip"android:layout_width="match_parent"android:layout_height="wrap_content"></android.support.v4.view.PagerTabStrip> --><android.support.v4.view.PagerTitleStrip
            android:id="@+id/pagerTitleStrip"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_gravity="bottom"></android.support.v4.view.PagerTitleStrip></android.support.v4.view.ViewPager></RelativeLayout>

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context=".MainActivity" ><android.support.v4.view.ViewPager
        android:id="@+id/viewPager"android:layout_width="match_parent"android:layout_height="match_parent"><!--   <android.support.v4.view.PagerTabStripandroid:id="@+id/pagertabStrip"android:layout_width="match_parent"android:layout_height="wrap_content"></android.support.v4.view.PagerTabStrip> --><android.support.v4.view.PagerTitleStrip
            android:id="@+id/pagerTitleStrip"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_gravity="bottom"></android.support.v4.view.PagerTitleStrip></android.support.v4.view.ViewPager></RelativeLayout>

item.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"><ImageView android:id="@+id/iv_item"android:layout_width="wrap_content"android:layout_height="wrap_content"android:src="@drawable/ic_launcher"/><TextView android:id="@+id/title_item"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_toRightOf="@id/iv_item"android:text="name"/><TextView android:id="@+id/content_item"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_toRightOf="@id/iv_item"android:text="aaa"android:layout_alignBottom="@id/iv_item"/></RelativeLayout>

转载于:https://www.cnblogs.com/muyuge/p/6152206.html

21 PagerTabStrip-PagerTitleStrip-viewPager相关推荐

  1. ViewPager 详解(三)---PagerTabStrip与PagerTitleStrip添加标题栏的异同

     相关文章: 1.<ViewPager 详解(一)---基本入门> 2.<ViewPager 详解(二)---详解四大函数> 3.<ViewPager 详解(三)-- ...

  2. Android ViewPager使用具体解释

    这是谷歌官方给我们提供的一个兼容低版本号安卓设备的软件包,里面包囊了仅仅有在安卓3.0以上能够使用的api.而viewpager就是当中之中的一个利用它,我们能够做非常多事情,从最简单的导航,到页面菜 ...

  3. Android中ViewPager+Fragment的基本使用

    这几天学习了一下ViewPager+Fragement的基本使用方法并写了个Demo.现将代码和效果图放上. 首先是布局文件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  4. ViewPager通过自定义适配器MyPagerAdapter实现界面导航(上标题)

    效果图: 一.这里是实现四个界面的左右拖动: VIewPager资源的四个VIew.xmlwen文件,这里只是简易事件四个界面 演示其中一个代码: view1.xml <?xml version ...

  5. Android - View - ViewPager

    使用ViewPager实现类似Google Play首页的滑动选项卡. 废话不多说先看效果图: 功能概要: 1.ViewPager负责实现左右滑动视图,PagerTabStrip负责实现可跟随View ...

  6. Android项目实战(四):ViewPager切换动画(3.0版本以上有效果)

    原文:Android项目实战(四):ViewPager切换动画(3.0版本以上有效果) 学习内容来自"慕课网" 一般APP进去之后都会有几张图片来导航,这里就学习怎么在这张图片切换 ...

  7. [Android Pro] AndroidX重构和映射

    原文地址:https://developer.android.com/topic/libraries/support-library/refactor https://blog.csdn.net/ch ...

  8. Android 应用开发----ViewPager---PagerTitleStrip添加标题栏

    ViewPager 详解 PagerTabStrip与PagerTitleStrip添加标题栏的异同 一.PagerTitleStrip 先看个简单的,先上个效果图,吸引大家一下眼球. 三个页面间的滑 ...

  9. Android Studio 3.4升级后的运行问题解决办法

    Android Studio 3.4推出有一段时间了,升级之后又有几个问题需要处理,说明如下: 一.把Gradle升级到AS3.4配套的5.1.1版本 1.手工下载Gradle4.6并解压,下载地址是 ...

  10. android项目迁移到androidX:类映射(android.support.v4*)

    支持库类 AndroidX 类 android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat androidx.core ...

最新文章

  1. delphi使用outputdebugstring调试程序和写系统日志
  2. 给GPT-2加上“人类偏好”补丁,它说的话就越来越有人情味了丨代码已开源
  3. 您是否也想过让你的电脑百毒不侵呢!
  4. Redmine数据库备份及搬家
  5. 4-1:C/C++内存管理
  6. Mr.J-- jQuery学习笔记(一)--初入jQuery
  7. deepin系统15.6版本安装执行那个exe文件_深度操作系统 deepin 20(1003)正式版发布:计算器支持科学计算,新增邮件、相机等应用...
  8. Python读取 csv文件中文乱码处理
  9. dbv连接mysql_mysql数据库版本控制dbv使用_MySQL
  10. java ssm框架论文,ssm框架理解
  11. 计算机学报论文字数要求,常见EI学报综述类文章分析
  12. 关于LVDS的硬件总结
  13. 定期存款遇调息怎么处理?
  14. 十年技术进阶路:让我明白了三件要事。关于如何做好技术 Team Leader?如何提升管理业务技术水平?(10000字长文)...
  15. 数字电路74161(MN)
  16. Default encoder for format image2 (codec png) is probably disabled. Please choose an encoder manuall
  17. python package什么意思_Python模块、包(Package)概念与用法分析
  18. FRM1 P1B1P1B2 整理笔记
  19. 图解Semaphore信号量之AQS共享锁-非公平模式
  20. Python爬虫入门实例九之Scrapy框架爬取股票信息(亲测有效)

热门文章

  1. 抖音创作规范_实体店如何借势抖音为门店获客?
  2. yolov5s 目标检测模型实战——火点烟雾检测实战
  3. mysql导入sql文件出错的一种解决方法
  4. 集合set中的基数cardinality是什么意思
  5. 微信小程序云开发教程-云开发对微信小程序带来的变革作用
  6. python多态如何理解_大家对python中多态是如何理解的?
  7. php判断ie的内核,js判断浏览器版本以及浏览器内核的方法_javascript技巧
  8. css布局的漂浮、position定位
  9. 2021-03-14
  10. lol游戏挂机软件_“本不想挂机,但系统不让重连!”LOL成“挂机联盟”,5局3挂机...