Android Fragment过渡重叠

时间:2017-05-30 03:22:28

标签: android

我是一名季节性Android开发者。试图从导航抽屉切换片段。这是我的方法:

@Override
    public void onDrawerClosed(View drawerView) {
        android.support.v4.app.FragmentTransaction fm= getSupportFragmentManager().beginTransaction();
        if(position==R.id.nav_profile)
        {
            Fragment pf= new ProfileFragment();
            fm.replace(R.id.fragmentTrick, pf);
            fm.addToBackStack(null);
            fm.commit();
        } else if(position==R.id.nav_home){
            Fragment pf= new TricksFragment();
            fm.replace(R.id.fragmentTrick, pf);
            fm.addToBackStack(null);
            fm.commit();
        }


    }

转换在上面的代码中运行正常但我的配置文件片段与我的其他片段重叠。以下是Profile片段的XML文件:

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent">


    <TextView
        android:id="@+id/firstName"
        android:layout_width="0dp"
        android:layout_height="40dp"
        android:layout_marginLeft="24dp"
        android:layout_marginRight="24dp"
        android:hint="First Name"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintTop_toTopOf="parent"
        android:layout_marginTop="39dp"
        android:layout_marginStart="24dp"
        android:layout_marginEnd="24dp" />



</android.support.constraint.ConstraintLayout>

My Tricks片段是:

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:orientation="vertical"
    android:layout_height="match_parent">

<android.support.v7.widget.RecyclerView
    android:id="@+id/viewRecycler"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_marginBottom="8dp"
    android:layout_marginLeft="8dp"
    android:layout_marginRight="8dp"
    android:layout_marginTop="8dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintLeft_toLeftOf="parent"
    app:layout_constraintRight_toRightOf="parent"
    app:layout_constraintTop_toTopOf="parent">

</android.support.v7.widget.RecyclerView>


</android.support.constraint.ConstraintLayout>

主要活动XML是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:orientation="vertical"
    xmlns:tools="http://schemas.android.com/tools">

<android.support.design.widget.AppBarLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/AppTheme.AppBarOverlay">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:popupTheme="@style/AppTheme.PopupOverlay" />

</android.support.design.widget.AppBarLayout>

<android.support.v4.widget.DrawerLayout
android:id="@+id/layoutDrawer"
android:layout_width="match_parent"
android:layout_height="match_parent">


<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <fragment
        android:layout_width="match_parent"
        android:id="@+id/fragmentTrick"
        class="com.i3techs.mtricks.TricksFragment"
        android:layout_height="match_parent">
    </fragment>
</FrameLayout>

<android.support.design.widget.NavigationView
    android:id="@+id/navView"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header"
    app:menu="@menu/activity_main_drawer" />


</android.support.v4.widget.DrawerLayout>
</LinearLayout>

我无法在堆栈溢出时找到类似的问题。我可能做错了什么。请指教。

0 个答案:

没有答案