您的位置:首页 > 其它

关于Fragment使用中遇到的一系列的问题

2016-08-04 20:27 239 查看
关于Fragment使用的教程在网上有很多了,但是关于V4包中的Fragment的讲解却很少,有的那些大拿贴出来的帖子在细节方面讲解的也不是很详细,今天我历尽千辛万苦,最后终于完成了V4.Fragment的界面切换操作。接下来给大家分享一下细节。

主类的XML文件:



这里要注意一下,要写FrameLayout,之前我写的是Frament,结果一直在报错,不知道是不是我的问题,如果错误解决不了可以尝试一下这个方法。

然后是其他界面的XML文件,基本千篇一律:


在.java文件中也没有写太多的东西:


V4包,要记得导包一定要正确。

接下来就是正文啦:




各位一定要记得啊,血与泪的教训啊,因为这几个包我浪费了一个小时啊。

接下来就是展示真正的技术了:


这只是很简单的一个页面切换操作,但是短短的一段代码我弄了整整半天时间,只能怪自己太菜。以后还要努力学习。

接下来讲一些细节的地方:

这段代码中的ft,也就是FragmentManage,用于实现管理Activity中的fragment,当fragment发生变化时,ft就会将事务提交给Activity去处理,所以最后一定要执行commit();而在这段代码中ft数不可以放到点击事件外的,如果ft放入Oncreate中去时,它只会创建一次,而不会多次创建,在点击事件结束的时候它提交了事务,再次触发点击事件之后并没有新建ft,这时候就会出现空指针异常的情况。所以ft是需要多次创建的。

而关于这一段:

在百度上有一些帖子上面写的是 

我多次尝试无果,也可能是我学艺不精,只能推荐大家如果被阻挡在了第二个方法上面,不妨尝试一下第一个方法。

最后就说一下容易马虎出的错吧:

这个.commit()方法是要else外面,点击事件之内。

以上就是我遇到的一些错误,可能很多地方错误都是微不足道的,但是越是低级的错误越容易忽略。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: