我知道这可能是一个不同的基本问题。我试图在Fragment B上面添加一个片段,说片段A.通常在添加片段时,我们将它添加到Activity布局中。但是现在,我正在尝试将Fragment A添加到Fragment B布局中,这样用户只要导航到Frag B而不能导航到其他Fragment,就可以在Frag B上方查看Frag A.问题是片段A没有覆盖整个布局,只覆盖了Frag B的一部分。我将在下面发布我的代码。请帮忙。
Inside Frag B.xml:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:background="@color/page_background"
android:orientation="vertical"
android:padding="20dp"
android:id="@+id/scan_layout"
android:clickable="true"
android:gravity="center_horizontal"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- TODO: Update blank fragment layout -->
<RadioGroup
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:layout_gravity="center_horizontal"
android:gravity="center_horizontal"
android:clickable="true"
android:id="@+id/radioGroupScan"
android:orientation="horizontal">
<RadioButton
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="8dp"
android:text="Registered"
android:checked="true"
android:textSize="12sp"
android:textColor="#000000"
android:background="@drawable/radiobutton_left_selector"
android:button="@android:color/transparent"
android:foreground="?android:attr/selectableItemBackground"
android:id="@+id/radio_registered"/>
<RadioButton
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="8dp"
android:text="Available"
android:background="@drawable/radiobutton_right_selector"
android:textSize="12sp"
android:textColor="#FFFFFF"
android:button="@android:color/transparent"
android:foreground="?android:attr/selectableItemBackground"
android:id="@+id/radio_available"/>
</RadioGroup>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:clickable="true"
android:layout_marginTop="20dp"
android:id="@+id/scantoolListRegistered">
</android.support.v7.widget.RecyclerView>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:clickable="true"
android:layout_marginTop="20dp"
android:visibility="gone"
android:id="@+id/scantoolListAvailable">
</android.support.v7.widget.RecyclerView>
<TextView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:text="No Tools Available."
android:textColor="#ffffff"
android:id="@+id/notool"
android:gravity="center"
android:textSize="15sp"
android:visibility="gone"
/>
在FragB.java里面我写道:
blankFragment.setArguments(bundle);
// LocalBroadcastManager.getInstance(getActivity()).unregisterReceiver(receiver);
fragmentManager.beginTransaction().add(R.id.scan_layout, blankFragment).commit();
答案 0 :(得分:0)
在activity.xml
内,您可以放置两个(框架)布局,并将它们视为碎片容器。
答案 1 :(得分:0)
这样做是为了从另一个片段打开另一个片段:
openDialogBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "onClick: opening custom dialog");
customDialogFragment customDialogFragment = new customDialogFragment();
customDialogFragment.setTargetFragment(MainFragment.this,/*requestCode*/ 1);
customDialogFragment.show(getFragmentManager(), "/*tag*/ MycustomDialogFragment");
}
});