我在活动中有两个片段:
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:id="@+id/mainlayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<fragment
class="com.eyecreate.fragment1"
android:id="@+id/fragment1"
android:layout_height="match_parent"
android:layout_width="269dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true" />
<fragment
android:id="@+id/fragment2"
android:layout_toRightOf="@id/fragment1"
android:layout_alignTop="@id/fragment1"
android:layout_alignBottom="@id/fragment1"
android:layout_alignParentRight="true"
class="com.eyecreate.fragment2"
android:layout_height="match_parent"
android:layout_width="match_parent"></fragment>
</RelativeLayout>
fragment1没有出现在屏幕上,也没有出现在层次结构查看器上,但是代码中的实例仍然在其上运行onCreate。 fragment2显示并占据整个屏幕。什么可能导致它刚刚消失?
答案 0 :(得分:0)
layout_width
的{{1}}和layout_height
属性为fragment2
。这就是它占据整个屏幕的原因。
我认为你想使用match_parent
而不是LinearLayout
。 RelativeLayout
对android:orientation
没有意义。
答案 1 :(得分:0)
感觉有点傻,我打电话给 getActivity()。的setContentView(fragment2) 在该片段的开始期间。这将导致fragment2成为唯一出现的。