在viewpager之上调用片段会相互重叠

时间:2016-05-23 13:59:18

标签: android android-layout android-viewpager

我有以下布局

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/coordinator_bracket_activity"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <FrameLayout
        android:id="@+id/activity_fragment"
        android:layout_height="match_parent"
        android:layout_width="match_parent">
    </FrameLayout>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <include
            android:id="@+id/app_bar_bracket_activity"
            layout="@layout/app_bar" />

            <android.support.design.widget.TabLayout
                android:id="@+id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:foregroundTint="@color/colorAccent"
                app:tabMode="fixed"
                app:tabMaxWidth="0dp"
                app:tabGravity="fill"/>

            <mypackage.NonSwipeViewPager
                android:id="@+id/tabs_pager"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_weight="1"/>
    </LinearLayout>
</android.support.design.widget.CoordinatorLayout>

nonswipeviewpager只是一个自定义类,我继承了一个viewpager来禁用某些东西。

无论如何,我的应用栏上有一个按钮,需要调用需要覆盖整个屏幕的片段。我会调用它并在框架布局上添加一个片段。在我为标签布局添加了一个viewpager之前,它工作正常。现在我不确定如何处理viewpager。

FragmentTransaction ft = mFM.beginTransaction();
                    mCustomFragment = CustomFragment.newInstance(mObject, mListOfObjects());
                    ft.replace(R.id.activity_fragment, mCustomFragment , "CustomFragment");
                    ft.addToBackStack(null);
ft.commit();

这是我应用栏上该按钮的clicklistener。

思想?

1 个答案:

答案 0 :(得分:0)

视图按照XML中定义的顺序绘制。如果您想要在另一个视图之上显示视图,它应该显示在它之后或您尝试使用: https://developer.android.com/reference/android/view/View.html#bringToFront()