您的当前位置:首页正文

Fragment心得

来源:图艺博知识网

前言

总结

1、首先要理解fragment与activity之间的生命周期关系;
2、理解FragmentTransaction的add、replace、remove、hide、show以及detach()和attach()方法;
3、使用DialogFragment创建对话框(他多次提到官方推荐);
4、由于activity重启,造成数据丢失,如何使用fragment进行大量数据保存;
5、FragmentPagerAdapter与FragmentStatePagerAdapter两种适配器的选择;
6、Fragment与Activity以及Fragment之前的数据传递;
7、抽象Fragment进行代码优化。

以下是我觉得重要的代码块:

.addToBackStack(null); //加入回退栈
/**抽象优化fragment**/
public abstract class SingleFragmentActivity extends FragmentActivity  
{  
    protected abstract Fragment createFragment();  
      
    @Override  
    protected void onCreate(Bundle savedInstanceState)  
    {  
  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_single_fragment);  
      
        FragmentManager fm = getSupportFragmentManager();  
        Fragment fragment =fm.findFragmentById(R.id.id_fragment_container);  
          
        if(fragment == null )  
        {  
            fragment = createFragment() ;  
              
            fm.beginTransaction()
                  
        }  
    }  
      
} 
//使用TargetFragment启用onActivityResult
Fragment.setTargetFragment(this, REQUEST_EVALUATE);
//...
getTargetFragment().onActivityResult(REQUEST_EVALUATE,  
                Activity.RESULT_OK, intent);

参考链接

Top