RadioGroup和ViewPager实现Tab
Activity的布局文件
<LinearLayout 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:orientation="vertical" android:gravity="center_horizontal"> <RadioGroup android:id="@+id/mainmedia_group" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal"> <RadioButton android:id="@+id/media_local" android:checked="true" style="@style/main_tab_bottom" android:drawableTop="@drawable/media_local" android:text="@string/media_local"/> <RadioButton android:id="@+id/media_online" style="@style/main_tab_bottom" android:drawableTop="@drawable/media_online" android:text="@string/media_online"/> </RadioGroup> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/background" /> </LinearLayout>
RadioButton的样式
<style name="main_tab_bottom"> <item name="android:textColor">#ffffffff</item> <item name="android:textSize">12.0sp</item> <item name="android:ellipsize">marquee</item> <item name="android:gravity">center_horizontal</item> <item name="android:paddingTop">2.0dp</item> <item name="android:layout_width">fill_parent</item> <item name="android:layout_height">wrap_content</item> <item name="android:button">@null</item> <item name="android:singleLine">true</item> <item name="android:layout_weight">1</item> <item name="android:background">@drawable/selector_home_bg</item> </style>
设置ViewPager的Apterda
mViewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()){ @Override public int getCount() { return 2; } @Override public Fragment getItem(int arg0) { Fragment fragment = null; switch (arg0) { case 1: fragment = new FragmentOnlineMedia(); break; case 0: default: fragment = new FragmentLocalMedia(); break; } return fragment; } });
给ViewPager加上页面切换监听
mViewPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int currItem) { // TODO Auto-generated method stub switch (currItem) { case 1: onlineMedia.setChecked(true); break; case 0: default: localMedia.setChecked(true); break; } } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { // TODO Auto-generated method stub } @Override public void onPageScrollStateChanged(int currItem) { // TODO Auto-generated method stub } });
给RadioGroup加上按钮改变监听
@Override public void onCheckedChanged(RadioGroup group, int checkedId) { // TODO Auto-generated method stub switch (checkedId) { case R.id.media_online: mViewPager.setCurrentItem(1); break; case 0: default: mViewPager.setCurrentItem(0); break; } }
这样就可完整地实现使用RadioGroup和ViewPager做页面切换了
RadioGroup和ViewPager实现Tab的更多相关文章
- RadioGroup 和 ViewPager 绑定 实现切换
package com.jereh.helloworld.activity.day12; import android.app.Activity; import android.os.Bundle; ...
- 无需SherlockActionbar的SlidingMenu使用详解(二)——向Fragment中添加ViewPager和Tab
之前我们对大体框架有了一定的认识,现在我们来做Fragment界面,其实这里面和这个框架的关系就不大了,但因为有些同学对于在SlidingMenu中切换fragment还是有问题,所以我就在本篇进行详 ...
- 使用ViewPager实现Tab
一.效果演示及分析 我们直接看两幅图.如下: 上两幅图实现的效果就是: (1)手指左右滑动时,中间的布局呈现不同的效果.而且下面的按钮也会做相应的改变. (2)我们 ...
- Android开源框架ViewPageIndicator和ViewPager实现Tab导航
前言: 关于使用ViewPageIndicator和ViewPager实现Tab导航,在开发社区里已经有一堆的博客对其进行了介绍,假设我还在这里写怎样去实现.那简直就是老生常谈,毫无新奇感,并且.我也 ...
- ViewPager与Tab结合使用
我们有时候需要 标题页卡与ViewPager结合使用,其实原理也很简单. 不过工程中要引入android-support-design.jar 首先是布局文件 <android.support. ...
- FragmentPagerAdapter+ViewPager实现Tab切换效果
1.Activity 加载布局文件,获取Viewpager控件 给ViewPager填充适配器. import android.app.ActionBar; import android.app ...
- Android RadioGroup Fragment Viewpager FragmentPagerAdapter 去哪网Fragment嵌套
RadioGroup中的各个选择器 <selector xmlns:android="http://schemas.android.com/apk/res/android"& ...
- 66、多种多样的App主界面Tab(1)------ ViewPager实现Tab
<?xml version="1.0" encoding="utf-8"?> <!-- bottom.xml --> <Linea ...
- Android:Fragment+ViewPager实现Tab滑动
public class FragAdapter extends FragmentPagerAdapter { private List<Fragment> fragments ; pub ...
随机推荐
- javaweb实现验证码功能
在javaweb的用户注册与登陆功能时,有时为了防止漏洞或者大量注册,可以使用验证码功能,下面是验证码的一个简单实现 验证码类 public class ValiImg extends HttpSer ...
- java 基本数据类型
long 是长整型,在怎么长本身也是整型,12.10的整形部分是12,当然结果是12, byte: 八位整数 -128——127,可用来节省内存的使用.short: 16位整数 -32768——32, ...
- php 简单操作数据库
<?php header("content-type:text/html;charset=utf-8"); /*//造一个连接 $connect = @mysql_conne ...
- Javascript模块化编程之路——(require.js)
转自:http://www.ruanyifeng.com/blog/2012/10/javascript_module.html Javascript模块化编程(一):模块的写法 随着网站逐渐变成&q ...
- [译]SQL Server 之 查询计划的简单参数化
SQL Server能把一些常量自动转化为参数,以重用这些部分的查询计划. SELECT FirstName, LastName, Title FROM Employees WHERE Employe ...
- laravel框架中widget模糊查询
.配置模糊查询的路由 Route::); .在widgets.php下注册widget <?php Widget::register() { $model = Str::stu ...
- laravel数据库查询是use方法的使用
){ return $query->where('effectivetime','<',date('Y-m-d')); }else{ ...
- 解决:Google代码achartengine曲线代码报错问题(转)
原文地址链接 官网:http://code.google.com/p/achartengine/ 下载代码部署项目会报下面的错误: java.lang.NoClassDefFoundError: or ...
- CC2540开发板学习笔记(五)——串口通信
(一)串口发送 一.实验现象: 开发板实现功能发送 二.实验过程 1.PL2303 USB转串口电路图 2.串口发送 (1)查看用户手册有: UART0 对应的外部设备 IO 引脚关系为: P0_2 ...
- Android 在资源文件(res/strings.xml)定义一维数组,间接定义二维数组
经常我们会在资源文件(res/strings.xml)定义字符串,一维数组,那定义二维数组?直接定义二维数组没找到,可以间接定义. 其实很简单,看过用过一次就可以记住了,一维数组估计大家经常用到,但是 ...