actionbar与viewpager的联合使用(android 3.0 ,level 11以上)
2019独角兽企业重金招聘Python工程师标准>>>
package com.example.pad;import java.util.ArrayList;
import java.util.List;import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.ActionBar.TabListener;
import android.app.Activity;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.ViewGroup;public class MainActivity extends Activity implements TabListener,OnPageChangeListener {private ActionBar actionBar;private ViewPager viewPager;private List<View> viewList;private MainPageAdapter viewPagerAdapter;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);viewPager = (ViewPager) findViewById(R.id.view_pager);actionBar = getActionBar();actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);actionBar.setDisplayShowTitleEnabled(false);actionBar.setDisplayShowHomeEnabled(true);Tab tab = actionBar.newTab().setText("第一页").setTabListener(this);actionBar.addTab(tab);tab = actionBar.newTab().setText("第二页").setTabListener(this);actionBar.addTab(tab);tab = actionBar.newTab().setText("第三页").setTabListener(this);actionBar.addTab(tab);viewList = new ArrayList<View>();View view1 = (View) View.inflate(this, R.layout.layout1, null);View view2 = (View) View.inflate(this, R.layout.layout2, null);View view3 = (View) View.inflate(this, R.layout.layout3, null);viewList.add(view1);viewList.add(view2);viewList.add(view3);viewPagerAdapter = new MainPageAdapter();viewPager.setAdapter(viewPagerAdapter);viewPager.setCurrentItem(0);viewPager.setOnPageChangeListener(this);}@Overridepublic void onTabReselected(Tab tab, FragmentTransaction ft) {}@Overridepublic void onTabSelected(Tab tab, FragmentTransaction ft) {viewPager.setCurrentItem(tab.getPosition());}@Overridepublic void onTabUnselected(Tab tab, FragmentTransaction ft) {}@Overridepublic void onPageScrollStateChanged(int arg0) {}@Overridepublic void onPageScrolled(int arg0, float arg1, int arg2) {}@Overridepublic void onPageSelected(int arg0) {actionBar.getTabAt(arg0).select();}public class MainPageAdapter extends PagerAdapter {@Overridepublic Object instantiateItem(ViewGroup container, int position) {View view = viewList.get(position);viewPager.addView(view);return view;}@Overridepublic void destroyItem(ViewGroup container, int position, Object object) {container.removeView(viewList.get(position));}@Overridepublic int getCount() {return viewList.size();}@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {return arg0 == arg1;}}
}
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="fill_parent"android:layout_height="fill_parent"android:orientation="vertical" ><android.support.v4.view.ViewPagerandroid:id="@+id/view_pager"android:layout_width="fill_parent"android:layout_height="fill_parent" /></FrameLayout>
转载于:https://my.oschina.net/eclipse88/blog/82715
actionbar与viewpager的联合使用(android 3.0 ,level 11以上)相关推荐
- 【高通SDM660平台 Android 10.0】(19) --- Camera_focus、Camera_snapshot、volume_up 按键工作原理分析
[高通SDM660平台 Android 10.0]19 --- Camera_focus.Camera_snapshot.volume_up 按键工作原理分析 一. DTS代码配置 二. Kernel ...
- 【高通SDM660平台 Android 10.0】(12) --- Camera Chromatix 代码分析
[高通SDM660平台 Android 10.0]Qcom Camera Daemon 代码分析 一.chromatix_imx258_lc898217xc 目录 1.1 例:imx258_lc898 ...
- Android使用ActionBar和ViewPager切换页面
演示效果如下: 项目布局如下: MainActivity.java代码 <code class="hljs java has-numbering" style=&qu ...
- 【新建项目amp;使用viewPager】实现一个Android电子书阅读APP
本章结尾处已放出应用DEMO,已经实现所有本文及后续文章所述全部功能,大家可以先下载下来玩玩看,欢迎在本文下方评论,小方很需要鼓励支持!!! 小说阅读器最终实现效果见 上一篇博文 新建一个项目 呼-我 ...
- 【新建项目使用viewPager】实现一个Android电子书阅读APP
本章结尾处已放出应用DEMO,已经实现所有本文及后续文章所述全部功能,大家可以先下载下来玩玩看,欢迎在本文下方评论,小方很需要鼓励支持!!! 小说阅读器最终实现效果见 上一篇博文 新建一个项目 呼-我 ...
- Android 6.0 变更
Android 6.0(API 级别 23)除了提供诸多新特性和功能外,还对系统和 API 行为做出了各种变更.本文重点介绍您应该了解并在开发应用时加以考虑的一些主要变更. 如果您之前发布过 Andr ...
- Android 6.0 Changes
Android 6.0 变化 Android 6.0 Changes In this document 执行时权限 Runtime Permissions Doze and App Standby ...
- android屏幕适配的五种方式_讲一讲Android 9.0系统的新特性,对刘海屏设备进行适配...
黑客技术点击右侧关注,了解黑客的世界! Java开发进阶点击右侧关注,掌握进阶之路! Python开发点击右侧关注,探讨技术话题!作者丨郭霖来源丨郭霖(guolin_blog) 其实Android 9 ...
- android 4.0以上WebView不能全屏播放视频的解决办法
上次鄙人做了一个简单的利用webView实现的一个浏览器!其中遇到了两个问题,一个是将浏览器中需要下载的内容托管到系统默认的下载程序进行下载,这个比较简单就不在这里讨论了:另一个问题就是我们的Andr ...
- 三星 原生android,原生Android 4.0 三星GALAXY Nexus评测
前言:北京时间10月19日上午10时,谷歌联合三星在香港举行了一场主题为"Calling all possibilities "的新品发布会,在发布会上正式推出了搭载最新Andro ...
最新文章
- 数据中心网络架构 — 云数据中心网络 — 新型叶脊二层网络架构
- python中xrange函数_python中xrange和range的区别
- 如何调整mintty行距及字间距
- php7序列化,php 7.2中未序列化字符串时出现问题
- HTML语言中checkbox的行为
- java 妖魔道-倩女幽魂_《倩女幽魂I-妖魔道》地图新手功略
- OpenCV图像处理(2)——形态学操作
- Nacos 配置实时更新原理分析
- 下软件,就靠这几个网站
- 坐标计算距离公式 火星坐标系_地图坐标转换 -- 火星坐标与GPS坐标
- 企业财务数据分析指标
- 这颗“洋葱”要上市了,低调盈利2亿元能跟上跨境电商队伍么?
- 什么叫高内聚、低耦合?
- layui 数字步进器_光音移动设计规范 — 表单类
- Oracle获取数据库当前时间
- 深入理解Java虚拟机(周志明第三版)- 第八章:虚拟机字节码执行引擎
- 虚拟服务器主机涨价好多,虚拟主机涨钱了吗
- java求美国数学家的年龄,第二届世界顶尖科学家论坛最年轻的参会者只有15岁
- 计算机与音乐制作专业就业前景,计算机音乐制作专业就业形势不错
- ZZNUOJ_C语言1123:最佳校友(附完整源码)
热门文章
- linux比较两个文件的内容,[Linux] 使用awk比较两个文件的内容
- sliverlight+WCF项目发布到IIS
- flask综合整理2
- Simple Mail Transfer Protocol --- SMTP协议
- 【转】彻底理解安卓里的ldpi、mdpi、hdpi、xhdpi、xxhdpi文件夹含义
- php一键环境包xammp 安装 phpDocumentor
- MySQL中多表的连接
- java captivate_flashremoting-java-win-en.exe
- java智能社下载_08 深入javascript
- html表单php比较三个值大小,php比较多维数组中值的大小排...-array_filter()函数去掉多维数组...-php生成静态html文件的三种方法_169IT.COM...