XML上一个子填充问题(Android)

时间:2014-12-27 19:17:31

标签: android android-layout

我有一个XML问题,我不知道如何解决它..

我想做什么:

我有一个活动,其中我有一个寻呼机的PagerViewer和控制按钮。 我想在底部加载Control Layout,在顶部加载Viewpager,它应该填充其余的布局。

我希望它看起来像这样:

http://imgur.com/xKbecST

这是我的实际代码:

<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    android:orientation="vertical">

 <LinearLayout
     android:layout_width="match_parent"
     android:layout_height="410dp"
     android:layout_gravity="top" >

     <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" > 

    </android.support.v4.view.ViewPager>  
     </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="bottom"
        android:orientation="horizontal"
        android:paddingLeft="16dp"
        android:paddingTop="0dp" >

          <Button
            android:id="@+id/pre"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/Pre" />

        <ZoomControls
            android:id="@+id/zoomControls1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

         <Button
            android:id="@+id/next"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/Next" />


    </LinearLayout>

</LinearLayout>

感谢您提供任何帮助。

编辑:感谢gio帮助我们正确编辑代码。

1 个答案:

答案 0 :(得分:-1)

不确定我是否遇到了问题,但我的猜测就在这里。

  1. 避免在任何地方使用fill_parent;改为使用match_parent;

  2. 对于包含ViewPager的LinearLayout,请将410dp替换为0dp并设置android:layout_weight="1";

  3. android:layout_height="match_parent"替换为android:layout_height="wrap_content",代替包含您的butttons的LinearLayout。
  4. 第3点将使您的LinearLayout足够高,足以显示其内容;第2点将使您的第一个LinearLayout填充剩余空间。如果需要,可以对ViewPager进行相同的操作。

    对于我在绘图中看到的边距,您可以在包含ViewPager的LinearLayout上设置android:padding属性。