Fragment的一点想法
总结Fragment之前,先思考一下Fragment是为了解决什么问题而存在的,这样学习的时候更容易理解一下。
- 重用性
- 通用性
- 模块化管理
总共大概就这三个功能。先说“重用性”,这个比较好理解。在开发过程中,有些模块重用性比较强,使用fragment就相当于使用了自定义view,将这个模块封装起来,以便重用。有时候之所以会用Fragment而不用自定义view,是因为fragment相对于自定义view来说多了一个生命周期的管理,这个特点在某些情况下是很需要的。
再说“通用性”,安卓的设备主要可分为手机和pad,如果不使用fragment,需要针对两种设备写两套代码,但如果使用fragment,就可以使用一套代码了。
然后是“模块化管理”,这个特点和“重用性”结合得比较紧。正是因为有了将功能集成封装了,才有了重用性。
Fragment的一些代码
Fragment中注册ContextMenu:
Fragment.registerForContextMenu()
Fragment.onCreateContextMenu()
Fragment.onContextItemSelect()
Fragment带有OptionMenu:
Fragment.setHasOptionMenu(true)
Fragment.onCreateOptionMenu(Menu menu){
menu.add()
}
DialogFragment:
Fragment.onCreateView()
Fragment.onCreateDialog()
DialogFragment.show()
FragmentTransition
setCustomAnimation()
show()
hide()