指点成金-最美分享吧

登录

android中Fragment的切换方法。

佚名 举报

篇首语:本文由小编为大家整理,主要介绍了android中Fragment的切换方法。相关的知识,希望对你有一定的参考价值。

新人水平低见谅。我用android studio提供的模板(tabbed activity)创建了一个应用。在layout下面做了多个不同的版式,希望在点到不同的section下使用,该如何调用??

参考技术A 需要做的准备
新建一个android项目,主Activity命名为MainActivity
创建三个Fragment1 Fragment2 Fragment3
为三个Fragment创建三个布局文fragment1.xml、fragment2.xml、fragment3.xml
布局 activity_main.xm
fragment1.xml样例

Fragment1样例

另外的可以根据样例进行修改
activity_main.xml内容

activity打开时需要显示一个fragment,也就是需要先向容器中添加一个fragment

这是就能显示第二个fragment了,那么如何切换不同的fragment呢,切换的过程如下
开启事务
调用事务的replace方法,将当前容器的fragment替换为新的fragment
提交事务

注意上图红框中的addToBackStack方法,很多人都不是很清楚这个方法的实际作用,说一下程序运行时候的现象你就明白了
初始化时显示的是 fragment2
实践1 :fragment2------点击按钮frag1-----按返回键--------退出应用
实践2: fragment2-----点击按钮frag3 -----按返回键--------返回到fragment2
为啥会出现上面的情况,原因就是切换到fragment3时,调用了addToBackStack方法,这时会将fragment2先入栈,然后再切换到fragment3,按返回键的时候fragment3销毁,fragment2出栈显示,而切换到fragme1时没有将fragme2入栈,所以fragment2就直接销毁了,再按返回键就直接退出应用了

以上是关于android中Fragment的切换方法。的主要内容,如果未能解决你的问题,请参考以下文章