我有这个布局显示标题,两个关于主题的信息片段(电话和地址),以及所有这是一个包含两个按钮的线性布局。如果我点击它们的顶部,那么这两个按钮只能被点击。如果我点击底部,整个窗口选择,如果我点击按钮选择的顶部。我尝试修复整个事情的填充,但这没有帮助。我想知道我在这里做错了什么。
这是xml文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center_vertical"
android:layout_margin="16dp">
<TextView
android:id="@+id/title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Title"
android:textSize="22sp"
android:textStyle="bold"
android:textColor="@color/white"
android:gravity="center_horizontal"
android:paddingTop="8dp"
android:paddingBottom="8dp"
android:background="@color/blue_dialog"
style="@style/BoldStyle" />
<TextView
android:id="@+id/description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="snippet"
android:layout_gravity="center"
android:textSize="16sp"
android:maxLines = "2"
android:minLines="1"
android:ellipsize="end"
android:layout_margin="8dp"
android:textAlignment="viewStart"
style="@style/RegularStyle"/>
<TextView
android:id="@+id/telephone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="snippet"
android:layout_gravity="center"
android:layout_centerVertical="true"
android:textSize="16sp"
android:layout_margin="8dp"
android:drawableLeft="@drawable/phone"
android:drawablePadding="8dp"
android:gravity="center"
android:textAlignment="viewStart"
style="@style/RegularStyle"/>
<TextView
android:id="@+id/address"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="snippet"
android:layout_centerVertical="true"
android:textSize="16sp"
android:layout_margin="8dp"
android:drawableLeft="@drawable/contacts"
android:drawablePadding="8dp"
android:layout_gravity="center"
android:gravity="center"
android:textAlignment="viewStart"
style="@style/RegularStyle"/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
android:layout_gravity="center"
android:layout_marginBottom="16dp">
<Button
android:id="@+id/buttonOffers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Offers"
android:background="@color/blue_dialog"
android:textAllCaps="false"
android:layout_marginRight="8dp"
android:textSize="18sp"
android:padding="8dp"
android:layout_gravity="center"
android:textColor="@color/white"
style="@style/BoldStyle"/>
<Button
android:id="@+id/buttonViewMore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="View More"
android:background="@color/blue_dialog"
android:textAllCaps="false"
android:textSize="18sp"
android:padding="8dp"
android:layout_gravity="center"
android:textColor="@color/white"
style="@style/BoldStyle"/>
</LinearLayout>
这是我的观点的基本例子。在红线下面,按钮是不可点击的。
答案 0 :(得分:2)
嵌套的LinearLayout内嵌
android:layout_marginBottom="16dp">
按钮有填充。
删除marginBottom和padding - 也许这会有所帮助。
答案 1 :(得分:1)
你能简单地画一下你所拥有的东西吗?想要实现?
此外,您告诉嵌套布局将其自身相对于其父。尝试删除
android:layout_gravity="center"
来自嵌套布局。
此外,请记住以下定义:
<强> @Edit 强>
对于您的目标,您的代码似乎合理。在包含按钮
的嵌套LinearLayout上尝试此操作<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<Button
android:id="@+id/buttonOffers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginRight="8dp"
android:background="@color/blue_light"
android:text="Offers"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="18sp"/>
<Button
android:id="@+id/buttonViewMore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/orange"
android:text="View More"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="18sp"/>
</LinearLayout>
@Edit 2
尝试添加
android:paddingBottom="30dp"
到嵌套的LinearLayout:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingBottom="30dp"
android:orientation="horizontal">
<Button
android:id="@+id/buttonOffers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginRight="8dp"
android:background="@color/blue_light"
android:text="Offers"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="18sp"/>
<Button
android:id="@+id/buttonViewMore"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@color/orange"
android:text="View More"
android:textAllCaps="false"
android:textColor="@color/white"
android:textSize="18sp"/>
</LinearLayout>