使用RadioGroup及Fragment来实现底部Tab效果 (AS版本)
2015-11-25 16:41
633 查看
使用RadioGroup及Fragment来实现底部Tab效果 (AS版本)
底部导航栏,这是日常开发里面经常用到的,如此我把之前项目里面剥离出来,例子比较简单,希望又需要的的朋友可以下载下来
MainActivity
activity_main.xml布局
style=”@style/main_tab_style”
各个Fragment
这里只是列出一个Fragement,其实几个都是类似
源代码:
https://github.com/yuekong/RadioGroupFragment.git
底部导航栏,这是日常开发里面经常用到的,如此我把之前项目里面剥离出来,例子比较简单,希望又需要的的朋友可以下载下来
MainActivity
package com.yuekog; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import android.widget.RadioGroup; import com.yuekog.ui.fragment.FragOperManager; import com.yuekog.ui.fragment.Fragment01; import com.yuekog.ui.fragment.Fragment02; import com.yuekog.ui.fragment.Fragment03; import com.yuekog.ui.fragment.Fragment04; public class MainActivity extends FragmentActivity implements RadioGroup.OnCheckedChangeListener { private FragOperManager manager; private RadioGroup rdoBtn; private Fragment01 fragment01; private Fragment02 fragment02; private Fragment03 fragment03; private Fragment04 fragment04; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); fragment01 = new Fragment01(); fragment02 = new Fragment02(); fragment03 = new Fragment03(); fragment04 = new Fragment04(); manager = new FragOperManager(this, R.id.fragment_container); manager.chReplaceFrag(fragment01, "fragment01", false); rdoBtn = (RadioGroup) findViewById(R.id.main_rg); rdoBtn.setOnCheckedChangeListener(this); } @Override public void onCheckedChanged(RadioGroup group, int checkedId) { switch (checkedId) { case R.id.rb0: manager.chReplaceFrag(fragment01, "fragment01", false); break; case R.id.rb1: manager.chReplaceFrag(fragment02, "fragment02", false); break; case R.id.rb2: manager.chReplaceFrag(fragment03, "fragment03", false); break; case R.id.rb3: manager.chReplaceFrag(fragment04, "fragment04", false); break; } } }
activity_main.xml布局
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:orientation="vertical" android:background="@android:color/white" android:layout_height="match_parent"> <FrameLayout android:id="@+id/fragment_container" android:layout_height="0dip" android:layout_weight="1" android:layout_width="match_parent"/> <RadioGroup android:id="@+id/main_rg" android:layout_height="50dip" android:background="@mipmap/tab_main_bg" android:layout_width="match_parent" android:orientation="horizontal"> <RadioButton android:id="@+id/rb0" android:checked="true" style="@style/main_tab_style" android:drawableTop="@drawable/tab_01_bg" android:text="@string/text_tab_01"/> <RadioButton android:id="@+id/rb1" style="@style/main_tab_style" android:drawableTop="@drawable/tab_02_bg" android:text="@string/text_tab_02"/> <RadioButton android:id="@+id/rb2" style="@style/main_tab_style" android:drawableTop="@drawable/tab_03_bg" android:text="@string/text_tab_03"/> <RadioButton android:id="@+id/rb3" style="@style/main_tab_style" android:drawableTop="@drawable/tab_04_bg" android:text="@string/text_tab_04"/> </RadioGroup> </LinearLayout>
style=”@style/main_tab_style”
<style name="main_tab_style"> <item name="android:layout_height">match_parent</item> <item name="android:layout_width">0dip</item> <item name="android:layout_weight">1</item> <item name="android:button">@null</item> <item name="android:paddingTop">5dip</item> <item name="android:textSize">11dip</item> <item name="android:paddingBottom">5dip</item> <item name="android:gravity">center</item> <item name="android:textColor">@color/main_tab_color_bg</item> </style>
各个Fragment
public class Fragment01 extends Fragment{ @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreateView(inflater, container, savedInstanceState); return inflater.inflate(R.layout.fragment_01, null); } }
这里只是列出一个Fragement,其实几个都是类似
源代码:
https://github.com/yuekong/RadioGroupFragment.git
相关文章推荐
- android自定义RadioGroup可以添加多种布局的实现方法
- Android Fragment 基本了解(图文介绍)
- Android控件系列之RadioButton与RadioGroup使用方法
- Android Fragment的使用方法(翻译)
- Android 中 Fragment的使用大全
- Android基于ViewPager Fragment实现选项卡
- Android基础之使用Fragment适应不同屏幕和分辨率(分享)
- 深入浅析 Android Fragment(上篇)
- Android中给fragment写入参数的轻量开发包FragmentArgs简介
- 深入浅析Android Fragment(下篇)
- Android Fragment中使用SurfaceView切换时闪一下黑屏的解决办法
- Android编程使用Fragment界面向下跳转并一级级返回的实现方法
- Fragment里添加ListView不要用ListFragment
- 详解Android开发中Fragment的使用
- Android中fragment嵌套fragment问题解决方法
- Android基础之Fragment与Activity交互详解
- Android基础之使用Fragment控制切换多个页面
- 关于RadioGroup的xml文件
- Fragment
- 去掉radioGroup的图标