Fragment 之间的跳转、返回

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Gary__123456/article/details/64134531
Fragment即Activity中的片段,可以理解为一个带有生命周期的View。它的生命周期也与它所承接的Activity密切相关。在Activity中添加Fragment需要调用FragmentTransaction的add或者replace方法,如下
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    getSupportFragmentManager().beginTransaction().replace(R.id.content,new FirstFragment()).commit();

}

R.id.conetent是Fragment在Activity布局中所呈现的位置的id。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/content"
    >

</RelativeLayout>

在已经添加的FirstFragment中我们也可以用replace方法来进行跳转到另一个Fragment,

FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN).replace(R.id.content,new SecondFragment());
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
上面的代码表示跳转到了SecondFragment,那在SecondFragment中怎样返回到FirstFragment呢?只需调用如下代码:
getActivity().getSupportFragmentManager().popBackStack();
这样就返回到了上一个Fragment中。


展开阅读全文

没有更多推荐了,返回首页