关于Fragment的用法

   Fragment,汉语解释为碎片,它实际上可以看作是Activity的一部分~

   在这里,总结一下Fragment的几种最常见的用法(其实只是最近我用到过的啦,不全面的以后更新补充,嘻嘻)。

一.  ViewPager+Fragment+RadioGroup 实现联动滑屏,具体的效果类似于微信主界面的滑动

    1.新写xml,效果为自己的Fragment内想要加载的View界面效果。

    2.新写类,继承自Fragment, 重写onCreateView 方法,返回值是自己定义的xml界面,具体操作如下:

    

@Override  
    public View onCreateView(LayoutInflater inflater, ViewGroup container,  
            Bundle savedInstanceState) {  
        View view = inflater.inflate(R.layout.angfragment, null);  
        return view;

  其中,R.layout.angfragment,便是我写的xml,这样的Fragment可以写任意多个,实现自己的使用 

   3.将Fragment放入ViewPager中去 


   1)自定义MyFragmentPagerAdapter继承自FragmentPagerAdapter

 public MyFragmentPagerAdapter(FragmentManager fm) {  
            super(fm);  
            // TODO Auto-generated constructor stub  
        }  

              //滑动的过程中呈现的Fragment的确定  
    @Override  
    public Fragment getItem(int arg0) {  
        Fragment fragment = null;  
        switch (arg0) {  
        case 0:  
            fragment = new FragmnetFirst();  
            break;  
        case 1:  
            fragment = new FragmentSecond();  
            break;  
        case 2:  
            fragment = new FragmentThird();  
            break;  
  
        }  
        return fragment;  
    }  
              //滑动的过程中可以呈现Fragment的个数  
    @Override  
    public int getCount() {  
        return 3;  
    }  
  
}  

  2)得到Adapter对象,并为ViewPager设置Adapter (一定记得此时的Activity应该继承自FragmentActivity)

    MyFragmentPagerAdapter adapter = new MyFragmentPagerAdapter(getSupportFragmentManager());

    viewPager.setAdapter(adapter);


  3)利用ViewPager的setCurrentItem方法,设置当前你想要载入的Fragment


  4)利用ViewPager的setOnpageChangeListener 中的第一个方法,对ViewPager滑屏事件进行一个监听(RadioButton部分就不多说   了。。。感觉好像也没啥)


  二.利用Fragment实现xml的复用


   这里的具体实现方法有以下几种:

    1.将Fragment放入Activity中,用xml写入。

      xml中,结点为:<fragment> 其中,必写属性有  height  width  id  name(快捷键找到自己写入的Java类)


    2.帧布局中加载Fragment

       xml中<Fragment>的建立,相当于一个控件式的。

       代码中  getFragmentManager().beginTransaction().replace(帧布局id,新建Fragment类对象).commit();


   暂时就这样吧,其实最主流的用法还是第一个啦~~~小娴娴那就告退啦!不要太想念我哟~

   对了对了,以后每博,娴娴都准备送鸡汤来着的,咳咳,准备好碗了嘛?

   送给刚刚工作的我,送给拿着碗的你:

   不管你有多着急,或者你有多害怕,我们现在都不能往前冲,冲出去也没有用,飞不起来的。现在我们只需要不忘记梦想,只需要静静的等,等风来。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值