【问题标题】:LinearLayout layout_gravity bottom issueLinearLayout layout_gravity 底部问题
【发布时间】:2013-02-26 09:18:18
【问题描述】:

这是我的代码:

<LinearLayout xmlns:tools="http://schemas.android.com/tools"   
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_home"
android:orientation="vertical"
tools:context=".HomeActivity" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.30"
    android:gravity="center" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="0.70"
    android:orientation="vertical" >

    <LinearLayout
        android:id="@+id/llayBtnUp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center" >

        <ImageView
            android:id="@+id/btntest"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fa" />

        <ImageView
            android:id="@+id/btntest1"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fas" />

        <ImageView
            android:id="@+id/btntest2"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fas" />
    </LinearLayout>

    <LinearLayout
        android:id="@+id/llayBtnDown"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center" >

        <ImageView
            android:id="@+id/btntest3"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fas" />

        <ImageView
            android:id="@+id/btntest4"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fa" />

        <ImageView
            android:id="@+id/tset5"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/fsa" />
    </LinearLayout>
    <LinearLayout 
        android:orientation="horizontal"
        android:id"@+id/llBot" 
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:layout_gravity="bottom" >

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

    </LinearLayout>
</LinearLayout>

</LinearLayout>

我想要的是最后一个 LinearLayout(id 为“llBot”)触摸他父级的底部。

所以我试过了:

android:layout_gravity="bottom"

但还是;它没有效果。我的LinearLayout 还是碰到了之前的Linearlayout。

谢谢!

【问题讨论】:

  • 不可能这样。使用垫片
  • 尝试外部布局为RelativeLayout,然后设置android:layout_alignParentBottom="true"
  • 哇...难道不能只用LinearLayout来做吗?如果没有,为什么?
  • 你有太多的LinearLayouts 没有效率,你应该使用RelativeLayouts。它为您提供比 LinearLayout 更多的控制权,LinearLayout 旨在一个接一个地布局。
  • 我无法解释为什么这是不可能的。这是不可能的,因为 Android 就是这样设计的。

标签: android xml android-linearlayout gravity layout-gravity


【解决方案1】:

试试下面的布局代码我做了相关的改动:

 <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="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="0.30"
    android:gravity="center" />
<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="0.70"
    android:orientation="vertical" >
    <LinearLayout
        android:id="@+id/llayBtnUp"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center" >
        <ImageView
            android:id="@+id/btntest"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/ic_launcher" />
        <ImageView
            android:id="@+id/btntest1"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/buttonred" />
        <ImageView
            android:id="@+id/btntest2"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/border" />
    </LinearLayout>
    <LinearLayout
        android:id="@+id/llayBtnDown"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center" >
        <ImageView
            android:id="@+id/btntest3"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/download" />
        <ImageView
            android:id="@+id/btntest4"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/buttonred" />
        <ImageView
            android:id="@+id/tset5"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="10dp"
            android:src="@drawable/ic_launcher" />
    </LinearLayout>        
   </LinearLayout>
    <LinearLayout
        android:id="@+id/test"
        android:layout_width="fill_parent"
        android:layout_height="100dp"
        android:orientation="horizontal"

        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="bottom"
            android:text="Button" />
    </LinearLayout>
 </LinearLayout>

【讨论】:

  • 但是,你到底改变了什么?
  • 好吧,你可以看看你的最后一个 LinearLayout 你会得到不同的。 :)
猜你喜欢
  • 1970-01-01
  • 2012-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多