<android.support.v4.view.ViewPager

android:id="@+id/viewpager"

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:layout_above="@+id/viewline"

</android.support.v4.view.ViewPager>

ViewPager是用到android v4包下的内容,v4包下有很多内容,经常用到的Fragment类不是用系统给的类而是V4包的Fragment比较常用。

ViewPager 需要数据源和对应的适配器

List< view> 和 PagerAdapter; List< Fragment> FragmentPagerAdapter2种放进视图页的形式

这次我们用第二种,定义好适配器。

public class viewpageradapter extends FragmentPagerAdapter {

List list;

public viewpageradapter(FragmentManager fm,List list) {

super(fm);

this.list=list;

}

@Override

public Fragment getItem(int position) {

Object fragment= list.get(position);

return (Fragment) fragment;

}

@Override

public int getCount() {

return list.size();

}

}

初始化好数据源

private void addFragment() {

list.add(new testFragment());

list.add(new test_twofragment());

list.add(new test_threefragment());

}

然后实例化适配器,并用ViewPager建立适配器

viewpageradapter=new viewpageradapter(getSupportFragmentManager(),list);

viewPager.setAdapter(viewpageradapter);

这样ViewPager就做好了

之后定义三个Fragment类

public class testFragment extends android.support.v4.app.Fragment {

@Nullable

@Override

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

View view= inflater.inflate(R.layout.layout,container,false);

return view;

}

@Override

public void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

}

}

第二个frament

package com.example.administrator.okio;

import android.app.Fragment;

import android.os.Bundle;

import android.support.annotation.Nullable;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

/**

  • Created by Administrator on 2018/6/12 0012.

*/

public class test_twofragment extends android.support.v4.app.Fragment {

@Nullable

@Override

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

View view=inflater.inflate(R.layout.layouttwo,null);

return view;

}

}

第三个fragment

import android.os.Bundle;

import android.support.annotation.Nullable;

import android.support.v4.app.Fragment;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

/**

  • Created by Administrator on 2018/6/12 0012.

*/

public class test_threefragment extends Fragment {

@Nullable

@Override

public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

View view=inflater.inflate(R.layout.layoutthree,null);

return view;

}

}

对应的布局都很简单,就一个TextView,就不一一粘贴了。

主界面的布局文件

<?xml version="1.0" encoding="utf-8"?>

<TabHost

android:id="@+id/tabhost"

xmlns:android=“http://schemas.android.com/apk/res/android”

android:layout_width=“match_parent”

android:layout_height=“match_parent”>

<RelativeLayout

android:layout_width=“match_parent”

android:layout_height="match_paren

《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》

【docs.qq.com/doc/DSkNLaERkbnFoS0ZF】 完整内容开源分享

t">

<android.support.v4.view.ViewPager

android:id="@+id/viewpager"

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:layout_above="@+id/viewline"

</android.support.v4.view.ViewPager>

<FrameLayout

android:id="@android:id/tabcontent"

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:visibility=“gone”>

<View

android:id="@+id/viewline"

android:layout_width=“match_parent”

android:layout_height=“1dp”

android:background="#cccccc"

android:layout_above="@android:id/tabs"/>

<TabWidget

android:id="@android:id/tabs"

android:layout_width=“match_parent”

android:layout_height=“60dp”

android:layout_alignParentBottom=“true”

TabHost+ViewPager+Fragment实现页面的滑动,android开发工具deve相关推荐

  1. android tabhost 动画,Android中使用TabHost 与 Fragment 制作页面切换效果

    三个标签页置于顶端 效果图: 在文件BoardTabHost.java中定义页面切换的效果:切换页面时,当前页面滑出,目标页面滑入.这是2个不同的动画设定动画时要区分对待 import android ...

  2. Android开发工具类集合

    各种帮助类汇总:https://github.com/Blankj/AndroidUtilCode 常用的 ios 风格 dialog 和 meterial design 风格的 dialog:htt ...

  3. Android开发工具Android Studio、Android SDK和Genymotion完全配置

    所谓"工欲善其事,必先利其器".Android Studio 是谷歌推出一个Android集成开发工具,基于IntelliJ IDEA. 类似 Eclipse ADT,Androi ...

  4. 安装Android开发工具

    安装Android开发工具 开发Android应用程序的门坎并不高,因为Google已经为Android应用程序开发提供了免费而且跨平台的集成开发环境.只要手上有台计算机,能连接上网络,我们就能随时下 ...

  5. 使用Android开发工具23版更新Eclipse

    本文翻译自:Update Eclipse with Android development tools v. 23 I updated Eclipse with the new SDK tools ( ...

  6. Android开发工具集合

    Android Studio Android开发环境,基于IntelliJ IDEA,谷歌2013年I/O大会发布,类似 Eclipse ADT:现已更新到1.3版本(截止15年8月),并支持NDK开 ...

  7. android studio开发工具介绍,Android应用开发之Android开发工具介绍、Android Studio配置...

    本文将带你了解Android应用开发之Android开发工具介绍.Android Studio配置,希望本文对大家学Android有所帮助. 2.1   Android Studio配置 2.1.1 ...

  8. 全网最全Android开发工具,Android开发框架大全

    涵盖Android方方面面的技术, 目前保持更新. 时刻与Android开发流行前沿同步. 目录 一.工具 Android开发工具 在线工具宝典大全 二.框架 *缓存框架* DiskLruCache ...

  9. Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具

    Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具 记得我的第一篇博客就是写Android Studio,但是现在看来还是有些粗糙了,所有重构了一下思路, ...

最新文章

  1. c++函数overload 的歧义匹配
  2. 一致性 Hash 在负载均衡中的应用
  3. flutter嵌入HTML5页面,Flutter加载Html并实现与JS 的双向调用
  4. 深度学习开发者的AI Party来了!WAVE SUMMIT+2021与你相约双十二
  5. python 进程池阻塞和非阻塞_python 之 并发编程(进程池与线程池、同步异步阻塞非阻塞、线程queue)...
  6. 客户端持久化解决方案: Web SQL
  7. 华中科技大学计算机学院陈迪,华中科技大学2011届“优秀毕业生”公示名单
  8. 腾讯云服务器安全吗?来说说
  9. 微信双开的登录取消没有回调
  10. eregi php5.4,PHP 5.4/5.3弃用函数eregi() memory_limit绕过漏洞
  11. 微信与qq怎么连接到服务器,王者荣耀微信和qq可以一起玩吗 王者荣耀微信和qq互通吗说明...
  12. PLSQL连接Oracle 数据库配置详解
  13. Web前端之CSS层叠样式表相关案例
  14. 使用C# .net开发微信公众号之服务器URL配置
  15. 传奇服是怎样架设的,怎样搭建一个属于自己的游戏服 10分钟学会游戏架设 玩转云服务器搭建游戏
  16. moviepy音视频开发:音频合成类AudioArrayClip介绍
  17. 工作点滴1 - Cisco IOS ver12.4 dampening bug - 思科路由器端口抑制漏洞
  18. Zabbix监控屏幕全屏显示多个监控项
  19. java计算机毕业设计中医药科普网站源码+mysql数据库+系统+lw文档+部署
  20. 为了保住男友面子,她竟然……

热门文章

  1. jpcsp源码解读11:近期笔记
  2. 悬浮窗天气插件html,简单易懂的天气插件(代码分享)
  3. unity视频播放格式
  4. char 类型的操作函数
  5. JavaScript函数式编程(二)
  6. Laplacian算子(拉普拉斯算子)
  7. tomcat 配置 quercus记录:php使用连接池访问数据库
  8. 通过统一多模态Transformer(UMT)的实体扫描检测(ESD)来改进多模态命名实体识别(MNER)
  9. Qml控件设置字体样式
  10. 通过U盘向服务器拷贝文件