之前虽然写过Fragment的文章,但是感觉在项目中根本不实用,今天来说一说Fragment的通信问题,看了看网上,大部分都写得很详细
生命周期什么的废话就不多说了,在这里说几个比较常用到的方法:
Fragment的Oncreat方法,该方法返回Fragment的UI布局,需要注意的是inflate()的第三个参数是false,不然会因为重复添加布局报错。
Fragment要传入参数,最好不要用构造函数传入,(最好的测试方法就是将你的手机横竖屏)将导致数据丢失,所以推荐在生命周期的onAttch中使用setArguments()方式添加。
如果你要使用Activity,不要getActivity()或者直接new一个Activity对象,而是在onAttch中将context强转成Activity,但是这样做将会让Fragment与Activity绑定
添加Fragment有静态和动态两种添加方式,推荐使用动态,因为比较lin引灵活,神的一句话:虽然Fragment能在XML中添加,但是这只是一个语法糖而已,Fragment并不是一个View,而是和Activity同一层次的。
传递数据推荐使用newInstans方法,使用bundle传送数据并在oncreat中将其拿到,注意(bundle不能为空)newInstens返回的是当前Fragment,所以在使用ViewPager的时候,添加数据源时变可以直接使用该方法将数据传入。
Fragment要使用Activity里面的数据,直接在Activity里面写一个get方法就好了。其他的以后补充