fragment+Radiobutton实现顶部导航切换
来源:互联网 发布:域名与商标冲突 编辑:程序博客网 时间:2024/05/28 23:09
看过网上很多很多的Fragment实现的导航栏,感觉都过于繁琐,所有写一篇关于自己的心得,这个应该是目前网上最简单的了。废话不多说,直接上项目吧
第一步:创建XXFragment.java和fragment_XX.xml文件:
public class AddFragment extends Fragment implements OnClickListener { private View view; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { view = inflater.inflate(R.layout.fragment_add, container, false); return view; } @Override public void onClick(View arg0) { }}这只是其中的一个Fragment,具体几个按照项目来定。至于fragment_add.xml这个文件就一个textView。
第二步:创建activity_main.xml主文件:
<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"> <RadioGroup android:id="@+id/main_tab_group" android:layout_width="match_parent" android:layout_weight="5" android:layout_height="wrap_content" android:orientation="vertical" android:paddingTop="2.0dip" > <RadioButton android:id="@+id/main_tab_home" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:button="@drawable/health_selector" android:checked="false" /> <RadioButton android:id="@+id/main_tab_add" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:button="@drawable/mall_selector" android:checked="false" /> <RadioButton android:id="@+id/main_tab_delete" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:button="@drawable/subscribe_selector" android:checked="false" /> <RadioButton android:id="@+id/main_tab_update" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:button="@drawable/find_selector" android:checked="false" /> <RadioButton android:id="@+id/main_tab_query" android:layout_width="match_parent" android:layout_height="fill_parent" android:layout_weight="1" android:button="@drawable/more_selector" android:checked="false" /> </RadioGroup> <FrameLayout android:id="@+id/fg_view" android:layout_width="match_parent" android:layout_weight="1" android:layout_height="match_parent"/></LinearLayout>
第三步:完善MainActivity.java文件:
public class MainActivity extends FragmentActivity implements OnClickListener { private RadioButton mRbHome, mRbAdd, mRbDelete, mRbQuery, mRbUpdate; private FrameLayout mFrg; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); } /** * */ private void initView() { mRbHome = (RadioButton) this.findViewById(R.id.main_tab_home); mRbAdd = (RadioButton) this.findViewById(R.id.main_tab_add); mRbDelete = (RadioButton) this.findViewById(R.id.main_tab_delete); mRbUpdate = (RadioButton) this.findViewById(R.id.main_tab_update); mRbQuery = (RadioButton) this.findViewById(R.id.main_tab_query); mFrg=(FrameLayout) this.findViewById(R.id.fg_view); mRbHome.setOnClickListener(this); mRbAdd.setOnClickListener(this); mRbDelete.setOnClickListener(this); mRbQuery.setOnClickListener(this); mRbUpdate.setOnClickListener(this); } /** * */ private void initData() { FragmentTransaction t; t =getSupportFragmentManager().beginTransaction(); t.replace(R.id.fg_view, new HomeFragment()); t.commit(); } @Override public void onClick(View v) { FragmentTransaction t; t =getSupportFragmentManager().beginTransaction(); switch (v.getId()) { case R.id.main_tab_home: t.replace(R.id.fg_view, new HomeFragment()); t.commit(); break; case R.id.main_tab_add: t.replace(R.id.fg_view, new AddFragment()); t.commit(); break; case R.id.main_tab_delete: t.replace(R.id.fg_view, new HomeFragment()); t.commit(); break; case R.id.main_tab_query: t.replace(R.id.fg_view, new QueryFragment()); t.commit(); break; case R.id.main_tab_update: t.replace(R.id.fg_view, new DeleteFragment()); t.commit(); break; default: break; } }
附上源码(ViewPager+RadioButton+Fragment):http://download.csdn.net/detail/u013651405/8764755
0 0
- fragment+Radiobutton实现顶部导航切换
- ViewPager、Fragment、RadioButton实现顶部切换Tab页面
- RadioButton实现Fragment切换
- 底部RadioButton实现Fragment切换
- RadioButton+Fragment实现底部导航栏
- Fragment 和RadioButton 实现底部导航拦
- Fragment 和RadioButton 实现底部导航拦
- Fragment+RadioButton实现点击切换页面效果
- Fragment+RadioButton实现Tab页切换
- Fragment+RadioButton实现点击切换页面效果
- 使用Viewpager 和 Fragment实现顶部导航
- ViewPager+Fragment实现顶部导航栏左滑
- ViewPager+Fragment滑动切换页面(RadioButton底部导航栏)
- 基于RN实现顶部tab导航切换
- RadioGroup+RadioButton切换Fragment
- ViewPager+RadioButton+FragmentPagerAdapter实现导航fragment生命周期分析
- Fragment+自定义RadioButton实现底部导航栏,仿QQ
- Fragment 搭建框架 实现 导航 切换
- 开源电商系统
- 2014届华为校园招聘机试题一
- THC SSL DoS的安装过程
- LeetCode219:Contains Duplicate II
- 安全测试:脚本攻击与SQL注入攻击
- fragment+Radiobutton实现顶部导航切换
- jax-ws webservice编程
- 网易游戏2015年暑期实习生面试经历-游戏研发工程师
- 5.1.2 Binary Tree Level Order Traversal II
- 黑马程序员_java语言_正则表达式以及Date类
- mysql数据库中group by和sum一起使用语句的简单介绍 .
- 黑马程序员---Java 网络编程(一)
- SVG(Scalable Vector Graphics)可缩放矢量图形
- 是否有初始化列表、参数是否为引用时调用构造函数和析构函数的执行顺序