21 PagerTabStrip-PagerTitleStrip-viewPager
- 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相关推荐
- ViewPager 详解(三)---PagerTabStrip与PagerTitleStrip添加标题栏的异同
相关文章: 1.<ViewPager 详解(一)---基本入门> 2.<ViewPager 详解(二)---详解四大函数> 3.<ViewPager 详解(三)-- ...
- Android ViewPager使用具体解释
这是谷歌官方给我们提供的一个兼容低版本号安卓设备的软件包,里面包囊了仅仅有在安卓3.0以上能够使用的api.而viewpager就是当中之中的一个利用它,我们能够做非常多事情,从最简单的导航,到页面菜 ...
- Android中ViewPager+Fragment的基本使用
这几天学习了一下ViewPager+Fragement的基本使用方法并写了个Demo.现将代码和效果图放上. 首先是布局文件 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...
- ViewPager通过自定义适配器MyPagerAdapter实现界面导航(上标题)
效果图: 一.这里是实现四个界面的左右拖动: VIewPager资源的四个VIew.xmlwen文件,这里只是简易事件四个界面 演示其中一个代码: view1.xml <?xml version ...
- Android - View - ViewPager
使用ViewPager实现类似Google Play首页的滑动选项卡. 废话不多说先看效果图: 功能概要: 1.ViewPager负责实现左右滑动视图,PagerTabStrip负责实现可跟随View ...
- Android项目实战(四):ViewPager切换动画(3.0版本以上有效果)
原文:Android项目实战(四):ViewPager切换动画(3.0版本以上有效果) 学习内容来自"慕课网" 一般APP进去之后都会有几张图片来导航,这里就学习怎么在这张图片切换 ...
- [Android Pro] AndroidX重构和映射
原文地址:https://developer.android.com/topic/libraries/support-library/refactor https://blog.csdn.net/ch ...
- Android 应用开发----ViewPager---PagerTitleStrip添加标题栏
ViewPager 详解 PagerTabStrip与PagerTitleStrip添加标题栏的异同 一.PagerTitleStrip 先看个简单的,先上个效果图,吸引大家一下眼球. 三个页面间的滑 ...
- Android Studio 3.4升级后的运行问题解决办法
Android Studio 3.4推出有一段时间了,升级之后又有几个问题需要处理,说明如下: 一.把Gradle升级到AS3.4配套的5.1.1版本 1.手工下载Gradle4.6并解压,下载地址是 ...
- android项目迁移到androidX:类映射(android.support.v4*)
支持库类 AndroidX 类 android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat androidx.core ...
最新文章
- delphi使用outputdebugstring调试程序和写系统日志
- 给GPT-2加上“人类偏好”补丁,它说的话就越来越有人情味了丨代码已开源
- 您是否也想过让你的电脑百毒不侵呢!
- Redmine数据库备份及搬家
- 4-1:C/C++内存管理
- Mr.J-- jQuery学习笔记(一)--初入jQuery
- deepin系统15.6版本安装执行那个exe文件_深度操作系统 deepin 20(1003)正式版发布:计算器支持科学计算,新增邮件、相机等应用...
- Python读取 csv文件中文乱码处理
- dbv连接mysql_mysql数据库版本控制dbv使用_MySQL
- java ssm框架论文,ssm框架理解
- 计算机学报论文字数要求,常见EI学报综述类文章分析
- 关于LVDS的硬件总结
- 定期存款遇调息怎么处理?
- 十年技术进阶路:让我明白了三件要事。关于如何做好技术 Team Leader?如何提升管理业务技术水平?(10000字长文)...
- 数字电路74161(MN)
- Default encoder for format image2 (codec png) is probably disabled. Please choose an encoder manuall
- python package什么意思_Python模块、包(Package)概念与用法分析
- FRM1 P1B1P1B2 整理笔记
- 图解Semaphore信号量之AQS共享锁-非公平模式
- Python爬虫入门实例九之Scrapy框架爬取股票信息(亲测有效)
热门文章
- 抖音创作规范_实体店如何借势抖音为门店获客?
- yolov5s 目标检测模型实战——火点烟雾检测实战
- mysql导入sql文件出错的一种解决方法
- 集合set中的基数cardinality是什么意思
- 微信小程序云开发教程-云开发对微信小程序带来的变革作用
- python多态如何理解_大家对python中多态是如何理解的?
- php判断ie的内核,js判断浏览器版本以及浏览器内核的方法_javascript技巧
- css布局的漂浮、position定位
- 2021-03-14
- lol游戏挂机软件_“本不想挂机,但系统不让重连!”LOL成“挂机联盟”,5局3挂机...