我有一个在屏幕上显示两个片段的活动,一个在另一个之下。顶部片段是活动的用户界面,第二个片段是自定义 ListView。我有两个可以填充顶部插槽的片段,每个片段的大小都不同。ListView 用于两者。
我面临的问题是顶部和底部片段之间存在重大差距。我知道它与 layout_weight 属性有关,而 layout_weight 是我见过的控制片段命令的屏幕大小的唯一方法。
我想知道的是,是否有办法在加载片段时动态调整保留片段区域的大小,或者我是否被这个丑陋的差距所困扰。
这是我的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TabHost
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<TabWidget
android:id="@android:id/tabs"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0"
/>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="0dp"
android:layout_height="0dp"
android:layout_weight="0"/>
<FrameLayout
android:id="@+android:id/realtabcontent1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<FrameLayout
android:id="@+android:id/realtabcontent2"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="2" />
</LinearLayout>
</TabHost>
</LinearLayout>