fragment嵌套fragment,支持点击、滑动变换页面效果
来源:互联网 发布:拳击实战知乎 编辑:程序博客网 时间:2024/06/03 13:13
MainActivity----首页-----》FragmentLbt
布局代码:
<RadioGroup android:layout_marginTop="50dp" android:id="@+id/rg_collect" android:layout_width="match_parent" android:layout_height="48dp" android:orientation="horizontal" android:background="@color/white" > <RadioButton style="@style/collect_tab" android:text="资讯" android:textColor="@drawable/lbt_s_textcolor" android:checked="true" android:button="@null" android:background="@drawable/lbt_s_checked_line" android:id="@+id/zixun" /><RadioButton style="@style/collect_tab" android:button="@null" android:textColor="@drawable/lbt_s_textcolor" android:text="简介" android:background="@drawable/lbt_s_checked_line" android:id="@+id/jianjie"/> <RadioButton style="@style/collect_tab" android:text="文化" android:background="@drawable/lbt_s_checked_line" android:textColor="@drawable/lbt_s_textcolor" android:id="@+id/wenhua"/> <RadioButton style="@style/collect_tab" android:text="案例" android:background="@drawable/lbt_s_checked_line" android:textColor="@drawable/lbt_s_textcolor" android:id="@+id/anli"/> <RadioButton style="@style/collect_tab" android:text="技术" android:background="@drawable/lbt_s_checked_line" android:textColor="@drawable/lbt_s_textcolor" android:id="@+id/jishu"/></RadioGroup><View style="@style/gray_line1"/><android.support.v4.view.ViewPager android:id="@+id/vPager" android:layout_marginTop="100dp" android:layout_width="wrap_content" android:layout_height="match_parent"></android.support.v4.view.ViewPager>
style部分 :
<style name="collect_tab"> <item name="android:layout_width">0dp</item> <item name="android:layout_height">match_parent</item> <item name="android:layout_weight">1</item> <item name="android:button">@null</item> <item name="android:padding">10dp</item> <item name="android:gravity">center</item> <item name="android:textSize">13sp</item> <item name="android:background">#FFFFFF</item>
Java代码:
public class FragmentLbt extends _Fragment {
private ViewPager mPager;private ArrayList<Fragment> fragmentsList;private TextView zixun,jianjie,wenhua,anli,jishu;Fragment home1;Fragment home2;Fragment home3;Fragment home4;Fragment home5;private int currIndex = 0;@Overrideprotected void onCreateView(Bundle savedInstanceState) { super.onCreateView(savedInstanceState); setContentView(R.layout.fragment_lbt); aq.find(R.id.head_title).text("莱贝特"); aq.find(R.id.head_left).visibility(View.INVISIBLE); //资讯 aq.find(R.id.zixun).clicked(new View.OnClickListener() { @Override public void onClick(View v) { mPager.setCurrentItem(0); } }); //简介 aq.find(R.id.jianjie).clicked(new View.OnClickListener() { @Override public void onClick(View v) { mPager.setCurrentItem(1); } }); //文化 aq.find(R.id.wenhua).clicked(new View.OnClickListener() { @Override public void onClick(View v) { mPager.setCurrentItem(2); } }); //案例 aq.find(R.id.anli).clicked(new View.OnClickListener() { @Override public void onClick(View v) { mPager.setCurrentItem(3); } }); //技术 aq.find(R.id.jishu).clicked(new View.OnClickListener() { @Override public void onClick(View v) { mPager.setCurrentItem(4); } }); mPager = (ViewPager) findViewById(R.id.vPager); fragmentsList = new ArrayList<Fragment>();
//这几个HomeFragment就是点击滑动的页面 home1 = new HomeFragment_1();// home2 = new HomeFragment_2(); home3 = new HomeFragment_3(); home4 = new HomeFragment_4(); home5 = new HomeFragment_5(); fragmentsList.add(home1); fragmentsList.add(home2); fragmentsList.add(home3); fragmentsList.add(home4); fragmentsList.add(home5); mPager.setAdapter(new MyFragmentPagerAdapter(getChildFragmentManager(), fragmentsList)); mPager.setOnPageChangeListener(new MyOnPageChangeListener()); mPager.setCurrentItem(0);}public class MyOnClickListener implements View.OnClickListener { private int index = 0; public MyOnClickListener(int i) { index = i; } @Override public void onClick(View v) { mPager.setCurrentItem(index); }};public class MyOnPageChangeListener implements ViewPager.OnPageChangeListener { @Override public void onPageSelected(int arg0) { currIndex = arg0; if(currIndex==0){ aq.find(R.id.zixun).checked(true); }else if (currIndex == 1){ aq.find(R.id.jianjie).checked(true); }else if (currIndex ==2){ aq.find(R.id.wenhua).checked(true); }else if (currIndex == 3){ aq.find(R.id.anli).checked(true); }else if (currIndex == 4){ aq.find(R.id.jishu).checked(true); } } @Override public void onPageScrolled(int arg0, float arg1, int arg2) { } @Override public void onPageScrollStateChanged(int arg0) { }}
本文参考文章:http://blog.csdn.net/mybook1122/article/details/24003343
此文仅供参考,如有不足请指出,大家互相学习。
以上就是基本代码了,如有不懂或者代码遗漏的地方请回复,看到会立即回复的。
1 0
- fragment嵌套fragment,支持点击、滑动变换页面效果
- Fragment嵌套ViewPager加上RadioButton实现微信页面滑动点击效果
- viewpager滑动fragment点击textview切换页面线条滑动效果
- Fragment嵌套Fragment, TabLayout + ViewPager实现页面切换滑动
- Fragment点击和滑动切换页面
- Fragment页面只能点击不能左右滑动
- Fragment嵌套Fragment实现多tab页面的效果
- ViewPager+Fragment 实现滑动页面的效果
- Fragment+RadioButton实现点击切换页面效果
- Fragment+RadioButton实现点击切换页面效果
- ViewPage+Fragment 滑动+点击
- ViewPage+Fragment 滑动+点击
- ViewPager+Fragment实现选项卡的滑动及点击效果
- ViewPager+Fragment实现滑动效果,并且能够点击切换
- Android ViewPager加Fragment实现滑动或者点击页面切换
- 滑动或点击按钮切换页面 ViewPager+RadioGroup+Fragment
- Android 利用ViewPager、Fragment、PagerTabStrip实现多页面滑动效果
- Android 利用ViewPager、Fragment、PagerTabStrip实现多页面滑动效果
- QT中自定义事件
- android文件读写
- vim的最最最基本操作
- 基于nodejs微信支付
- ASP.NET C# MVC 初学(一)
- fragment嵌套fragment,支持点击、滑动变换页面效果
- java中File类的使用方法
- android使用webview上传文件(支持相册和拍照),支持最高6.0安卓系统(改进版)
- eclipse 到处javadoc出现字符编码问题解决
- IQView关键测试项简介
- QT QString 十六进制整数变为字符串自动补0 && 十进制补零
- jar
- linux mysql操作指令
- Ubuntu15.10 Hadoop伪分布式环境安装