作者:Q457423356 | 来源:互联网 | 2023-09-24 10:48
我有这样的容器构建:RelativeLayoutcontainer--LinearLayout--TextView--LinearLayout--Button--Button我试图
我有这样的容器构建:
RelativeLayout container
--LinearLayout
--TextView
--LinearLayout
--Button
--Button
我试图将一个片段“ListFragment”添加到容器中,显示两个LinearLayouts:
ListFragment listfragment = new ListFragment();
getFragmentManager().beginTransaction().replace(R.id.contianer,listfragment).commit();
问题是:它没有.它仅显示在第二个LinearLayout上方,并且第一个LinearLayout仍然可见于片段上方.
这是两个xmls:
容器xml:
android:id="@+id/contianer"
android:layout_
android:layout_
android:layout_weight="1"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_alignParentEnd="true"
android:layout_below="@+id/container">
android:layout_
android:layout_
android:paddingBottom="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:layout_marginLeft="0dp"
android:id="@+id/linearLayout"
android:layout_alignParentBottom="true"
android:paddingTop="30dp">
android:orientation="vertical"
android:layout_
android:layout_
android:background="@android:color/white"
android:elevation="4dp"
android:id="@+id/vanisherView"
android:layout_centerHorizOntal="true"
android:layout_margin="20dp">
android:id="@+id/erklareung"
android:layout_
android:layout_
android:textColor="@android:color/black"
android:background="@android:color/white"
android:padding="40dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textSize="35dp"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="true" />
容器包装在另一个布局中,但我认为,这并不重要.
这是片段xml:
android:layout_
android:layout_
android:background="@android:color/black"
android:id ="@+id/viewer_layout">
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drag_list_view"
android:layout_
android:background="@android:color/black"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_/>
我画了片段黑色,看它在哪里显示,哪里没有
谢谢你的回答和欢呼
解决方法:
不要尝试将Fragment添加到已包含其他视图的容器视图中.
而是将FrameLayout放置在您希望放置Fragment的任何位置,然后将Fragment添加到其中而不是父容器.
您可以在FrameLayout上设置所需的属性,以确保它位于RelativeLayout中的所需位置.
例: