我的垂直线性布局有重量,我在这个布局中有两个按钮,我希望每个图像都有一个背景,但问题是,由于重量按钮伸出,我无法指定合适的高度和重量。而且给予体重也很重要。我试过在单独的xml中指定按钮的高度,但它仍然是相同的。请告诉我一种为我的按钮指定重量和高度的方法。
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0" >
<Button
android:id="@+id/textbox3"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:background="@drawable/btn"
android:padding="50dp"
android:text="button_1" />
<Button
android:id="@+id/textbox4"
android:layout_width="110dip"
android:layout_height="wrap_content"
android:layout_weight=".5"
android:text="button_2" />
答案 0 :(得分:0)
我认为你必须使用android:gravity="right"
答案 1 :(得分:0)
如果我理解正确,你希望按钮具有特定的高度(110dp),但仍然是等距的(textbox3约为25%,textbox4约为75%)
您不能直接使用1个线性布局直接执行此操作,因为重量和高度是相互冲突的属性(重量最终会覆盖高度)
你想要做的是,每个按钮都有自己的布局,重量= 0.5,而不是新布局中的那个按钮
以下是您需要创建的布局的skelaton:
<LinearLayout
android:orientation="vertical"
android:weightSum="1.0" >
<RelativeLayout
android:layout_weight=".5">
<Button
android:layout_width="110dp"
android:layout_height="wrap_content"
androud:layoutCenterInParent=true />
</RelativeLayout>
<RelativeLayout
android:layout_weight=".5">
<Button
android:layout_width="110dp"
android:layout_height="wrap_content"
androud:layoutCenterInParent=true />
</RelativeLayout>
</LinearLayout>
答案 2 :(得分:0)
将Button
放在LinearLayout
内并加权适用于他们
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight=".5"
android:gravity="center" >
<Button
android:id="@+id/textbox3"
android:layout_width="110dp"
android:layout_height="wrap_content"
android:background="@drawable/ic_launcher"
android:text="button_1" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight=".5"
android:gravity="center" >
<Button
android:id="@+id/textbox4"
android:layout_width="110dip"
android:layout_height="wrap_content"
android:text="button_2" />
</LinearLayout>
</LinearLayout>
答案 3 :(得分:0)
使用ImageButton,您可以指定图像的缩放方式。检查以下示例和android:scaleType属性
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:weightSum="1.0" >
<ImageButton
android:id="@+id/textbox3"
android:layout_width="110dp"
android:layout_height="0dp"
android:layout_weight=".5"
android:maxHeight="20dp"
android:padding="50dp"
android:scaleType="centerCrop"
android:src="@drawable/btn"
android:text="button_1" />
<ImageButton
android:id="@+id/textbox4"
android:layout_width="110dip"
android:layout_height="0dp"
android:layout_weight=".5"
android:text="button_2" />
</LinearLayout>
答案 4 :(得分:0)
<RelativeLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight=".25"
android:background="@drawable/racoon_tile_2" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="bottom"
android:orientation="vertical"
android:weightSum="1.0" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".5" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Button" />
</RelativeLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight=".5" >
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Button" />
</RelativeLayout>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>