一个布局中的 4 个片段
4 fragments in one layout
我想在 1 个屏幕上显示 4 个片段。由于其中四个是长方形的。
xml 代码为
如下所示
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="4" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="15dp"
android:paddingTop="25dp"
android:weightSum="2" >
<fragment
android:id="@+id/fragment1"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1.00" >
</fragment>
<fragment
android:id="@+id/fragment2"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="25dp"
android:weightSum="2" >
<fragment
android:id="@+id/fragment3"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
<fragment
android:id="@+id/fragment4"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
虽然我知道如何在四种不同的布局和四个 类 中制作四个不同的片段,然后 link 通过 tabular 中的片段适配器在主要 activity 中制作它们屏幕 或查看寻呼机
但我不知道如何在 main activity 中初始化其中的四个,因为 4 个片段以方形方式出现在 1 个屏幕上,彼此不重叠。提前致谢
可以将4帧布局作为一个容器,用fragment替换。
frame_fragment_four.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="4" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="15dp"
android:paddingTop="25dp"
android:weightSum="2" >
<FrameLayout
android:id="@+id/fragment1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1.00" >
</FrameLayout>
<FrameLayout
android:id="@+id/fragment2"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="25dp"
android:weightSum="2" >
<FrameLayout
android:id="@+id/fragment3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
<FrameLayout
android:id="@+id/fragment4"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
在片段Activity中替换片段
public class MainBaseFragmentActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.frame_fragment_four);
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment1, new FragmentScreenA()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment2, new FragmentScreenB()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment3, new FragmentScreenC()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment4, new FragmentScreenD()).commit();
}
}
"as the 4 of the fragments are appear on 1 screen in squarical manner without overlapping each other ."
分享或post如果我弄错了..
我想在 1 个屏幕上显示 4 个片段。由于其中四个是长方形的。
xml 代码为
如下所示
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="4" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="15dp"
android:paddingTop="25dp"
android:weightSum="2" >
<fragment
android:id="@+id/fragment1"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1.00" >
</fragment>
<fragment
android:id="@+id/fragment2"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="25dp"
android:weightSum="2" >
<fragment
android:id="@+id/fragment3"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
<fragment
android:id="@+id/fragment4"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
虽然我知道如何在四种不同的布局和四个 类 中制作四个不同的片段,然后 link 通过 tabular 中的片段适配器在主要 activity 中制作它们屏幕 或查看寻呼机 但我不知道如何在 main activity 中初始化其中的四个,因为 4 个片段以方形方式出现在 1 个屏幕上,彼此不重叠。提前致谢
可以将4帧布局作为一个容器,用fragment替换。
frame_fragment_four.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="4" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="15dp"
android:paddingTop="25dp"
android:weightSum="2" >
<FrameLayout
android:id="@+id/fragment1"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1.00" >
</FrameLayout>
<FrameLayout
android:id="@+id/fragment2"
android:name="frags"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
android:orientation="horizontal"
android:paddingBottom="25dp"
android:weightSum="2" >
<FrameLayout
android:id="@+id/fragment3"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
<FrameLayout
android:id="@+id/fragment4"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_weight="1" />
</LinearLayout>
在片段Activity中替换片段
public class MainBaseFragmentActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.frame_fragment_four);
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment1, new FragmentScreenA()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment2, new FragmentScreenB()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment3, new FragmentScreenC()).commit();
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment4, new FragmentScreenD()).commit();
}
}
"as the 4 of the fragments are appear on 1 screen in squarical manner without overlapping each other ."
分享或post如果我弄错了..