试试这个
xml file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@color/red"
android:orientation="horizontal"
android:weightSum="11">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_weight="0.40"
android:orientation="horizontal">
<TextView
android:id="@+id/lblParca"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Parça Kodu"
/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.40"
android:orientation="horizontal">
<EditText
android:id="@+id/txthldMalzemeKodu"
style="@style/DefaultEditTextSmall"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:inputType="textCapCharacters"
android:singleLine="true"/>
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.20"
android:orientation="horizontal">
<ImageButton
android:id="@+id/btnhldgetMalzeme"
style="@style/btnStyleBreakerBay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@mipmap/ic_ara"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
如果您对 Aspicas 的回答感到满意,布局可以简化为
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:background="@color/red"
android:orientation="horizontal">
<TextView
android:id="@+id/lblParca"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_gravity="center_vertical"
android:layout_weight="0.40"
android:text="Parça Kodu" />
<EditText
android:id="@+id/txthldMalzemeKodu"
style="@style/DefaultEditTextSmall"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.40"
android:inputType="textCapCharacters"
android:singleLine="true"/>
<ImageButton
android:id="@+id/btnhldgetMalzeme"
style="@style/btnStyleBreakerBay"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="0.20"
android:scaleType="centerInside"
android:src="@mipmap/ic_ara"/>
</LinearLayout>
无需拥有所有包装纸。另请注意 TextView 的更改,使用
gravity
而不是 layout_gravity
来居中内容。我实际上很惊讶这个作品,根据我的理解,这应该延伸视图的高度,显然我的想法是错误的。
您需要为所有视图设置相同的高度。 要么你这样做:
android:layout_height="match_parent"
或
android:layout_height="some value"
一种方法是对父级的 LinearLayout Height 进行硬编码。
另一种方法是为每个项目和每个 LinearLayout
集中采用 3 个 LinearLayout
android:layout_gravity="center_vertical"