Fragment的简单使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fragment的简单使用相关的知识,希望对你有一定的参考价值。

使用Fragment时,可以通过用户交互来执行一些动作,比如增加、移除、替换等。
所有这些改变构成一个集合,这个集合被叫做一个transaction。

可以调用FragmentTransaction中的方法来处理这个transaction,并且可以将transaction存进由activity管理的back stack中,这样用户就可以进行fragment变化的回退操作。

  
可以这样得到FragmentTransaction类的实例: 

FragmentManager fragmentManager = getFragmentManager();

FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
 
  
每个transaction是一组同时执行的变化的集合。

  
用add(), remove(), replace()方法,把所有需要的变化加进去,然后调用commit()方法,将这些变化应用。

  
在commit()方法之前,你可以调用addToBackStack(),把这个transaction加入back stack中去,这个back stack是由activity管理的,当用户按返回键时,就会回到上一个fragment的状态。

自定义Fragment 代码:

public class TotalFragment extends Fragment  {

    
    
    public static Fragment getTotalFragment() {
        TotalFragment fragment = new TotalFragment();
        return fragment;
    }

    // 与Activity传递数据
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

    }

    // 加载布局
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        return inflater.inflate(R.layout.activity_total, container, false);
    }

    // find 事件处理
    @Override
    public void onViewCreated(View view, Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
    }

Activity中代码:

 getSupportFragmentManager()
         .beginTransaction()
         .add(R.id.container,HomeFragment.getMyFragment()
         .commit();//应用上面的设置

 

以上是关于Fragment的简单使用的主要内容,如果未能解决你的问题,请参考以下文章

[Android]Fragment源代码分析 事务

将数据从Activity发送到Fragment - 如何?

jmeterInclude Controller控件&Test Fragment的使用

Fragment 和 FragmentStatePagerAdapter 中带有 ViewPager 的片段导致异常(带有完整示例)

如何通过代码设置片段标签?

片段未在后退按钮上打开上一个片段