2013-06-20 148 views
1

我在顶部有一组按钮,底部有一组按钮,我希望整个图像视图的中间空间能够显示图像。但问题是图像与底部按钮组重叠。 我试着改变重量,使用0dp,重新排列布局..但没有任何工作。Android布局重叠

这里是我的XML,

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:gravity="center_horizontal" 
android:orientation="vertical" > 

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_above="@+id/relativeLayout1" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/topButtons" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <Button 
      android:id="@+id/questionBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Question" /> 

     <Button 
      android:id="@+id/solutionBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Solution" /> 

     <Button 
      android:id="@+id/resetBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Reset" /> 
    </LinearLayout> 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="center" /> 
</LinearLayout> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:paddingLeft="5dp" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <Button 
      android:id="@+id/btnA" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@drawable/choice_button" 
      android:text=" A " /> 

     <Button 
      android:id="@+id/buttonB" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" B " /> 

     <Button 
      android:id="@+id/buttonC" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" C " /> 

     <Button 
      android:id="@+id/buttonD" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" D " /> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" > 

     <Button 
      android:id="@+id/nextBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Next" /> 
    </LinearLayout> 
</RelativeLayout> 

+1

你的XML文件格式不正确,它有2个RelativeLayouts开始标记,只有1结束标记。 –

回答

2

复制和粘贴,

 <?xml version="1.0" encoding="utf-8"?> 
     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="fill_parent" 
     android:layout_height="fill_parent" 
     android:gravity="center_horizontal" 
      android:orientation="vertical" > 

<LinearLayout 
    android:id="@+id/topButtons" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal" > 

    <Button 
     android:id="@+id/questionBtn" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minHeight="20dp" 
     android:text="Question" /> 

    <Button 
     android:id="@+id/solutionBtn" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minHeight="20dp" 
     android:text="Solution" /> 

    <Button 
     android:id="@+id/resetBtn" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minHeight="20dp" 
     android:text="Reset" /> 
</LinearLayout> 

<ImageView 
    android:id="@+id/imageView1" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_below="@+id/topButtons" 
    android:layout_above="@+id/belowbutons" 
    android:scaleType="center" /> 

<RelativeLayout 
    android:id="@+id/belowbutons" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:paddingLeft="5dp" > 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <Button 
      android:id="@+id/btnA" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="@drawable/choice_button" 
      android:text=" A " /> 

     <Button 
      android:id="@+id/buttonB" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" B " /> 

     <Button 
      android:id="@+id/buttonC" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" C " /> 

     <Button 
      android:id="@+id/buttonD" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" D " /> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" > 

     <Button 
      android:id="@+id/nextBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Next" /> 
    </LinearLayout> 
</RelativeLayout> 

+1

非常感谢! –

3

清理你的XML一点。它仍然可以改进,但这会做到这一点。为顶部和底部布局设置ID,并将您的ImageView设置为低于顶部和底部。

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:gravity="center_horizontal" 
android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/topButtons" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" > 

     <Button 
      android:id="@+id/questionBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Question" /> 

     <Button 
      android:id="@+id/solutionBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Solution" /> 

     <Button 
      android:id="@+id/resetBtn" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:minHeight="20dp" 
      android:text="Reset" /> 
    </LinearLayout> 





    <LinearLayout 
     android:id="@+id/rlBottom" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true"> 

     <Button 
      android:id="@+id/btnA" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:background="#ff0000" 
      android:text=" A " /> 

     <Button 
      android:id="@+id/buttonB" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" B " /> 

     <Button 
      android:id="@+id/buttonC" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" C " /> 

     <Button 
      android:id="@+id/buttonD" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text=" D " /> 

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

    </LinearLayout> 






<ImageView 
     android:layout_below="@+id/topButtons" 
     android:layout_above="@+id/rlBottom" 
     android:id="@+id/imageView1" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:scaleType="center" /> 
</RelativeLayout> 
+0

苏雷什第一个解决我的问题,所以给了他信用,但你解释了错误的地方,所以也谢谢。 –