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 ...
随机推荐
- javascript字典数据结构常用功能实现
必知必会啊. function Dictionary(){ var items = {}; this.has = function (key) { return key in items; }; th ...
- sdut 2411:Pixel density(第三届山东省省赛原题,字符串处理)
Pixel density Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 Pixels per inch (PPI) or pi ...
- UML中的关联关系
UML中的关联关系其内在意思就是has a 如图: 相对于依赖关系,关联关系在代码中有所体现.上图中的关联关系在代码中体现为 其中water 中将Climate作为其中的属性. 当然,关 ...
- qmf
vim命令 ——————————正文开始—————————— Vim是一款简单而强大的文本编辑器,它能以简单的方式完成复杂的操作. 学习 vim 首先了解它的几种模式: 下图提供了三种模式下的切换: ...
- Xamarin.iOS提供没有匹配的配置文件
Xamarin.iOS提供没有匹配的配置文件 错误信息:No installed provisioning profiles match the installed ios code signing ...
- html表单应用
<!DOCTYPE html> <html> <head> <meta name="generator" content="HT ...
- Codeforces 86D Powerful array(莫队算法)
和BZOJ2038差不多..复习一下. #include<cstdio> #include<cmath> #include<algorithm> using nam ...
- Unity3d中SendMessage 用法简单笔记
Message相关有3条指令:SendMessage ("函数名",参数,SendMessageOptions) //GameObject自身的ScriptBroadcastMes ...
- hihoCoder 1160 攻城略地
原图可能有多个连通分量,先DFS找出每个连通分量中最小节点,这些必然是要攻占的城市. 设 n 为节点数, m 为边数, cnt 为初始连通分量数,在剩下的边数不小于 m - (n - cnt) 的时候 ...
- BZOJ3046 : lagoon
码农题,拆点BFS预处理出所有联通块的面积即可,注意分类讨论. #include<cstdio> #include<cmath> using namespace std; co ...