我正在尝试将ImageView
和EditText
放在同一行。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/image_flag"
android:layout_width="25dp"
android:layout_height="30dp"
android:layout_gravity="bottom"
android:layout_weight="1"
android:adjustViewBounds="true"
android:scaleType="fitXY"
android:src="@mipmap/ic_launcher" />
<!-- Phone number Label -->
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="8"
android:drawablePadding="5dp"
android:gravity="center_vertical">
<EditText
android:id="@+id/signin_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Phone Number"
android:inputType="phone" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
这是它的样子。
如何在同一中心线上制作电话号码视图和图像?感谢。
答案 0 :(得分:2)
将android:gravity="center_vertical"
添加到LinearLayout
答案 1 :(得分:0)
您可以在drawableLeft
中使用EditText
属性,而不是像这样使用其他ImageView
。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<!-- Phone number Label -->
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_weight="8"
android:drawablePadding="5dp"
android:gravity="center_vertical">
<EditText
android:id="@+id/signin_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableLeft="@mipmap/ic_launcher"
android:hint="Phone Number"
android:inputType="phone" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
或者您可以考虑使用RelativeLayout
然后将重力layout_centerVertical
设置为true,如下所示..
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image_flag"
android:layout_width="25dp"
android:layout_height="30dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_gravity="bottom"
android:adjustViewBounds="true"
android:src="@mipmap/ic_launcher" />
<!-- Phone number Label -->
<android.support.design.widget.TextInputLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/image_flag">
<EditText
android:id="@+id/signin_phone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="Phone Number"
android:inputType="phone" />
</android.support.design.widget.TextInputLayout>
</RelativeLayout>
答案 2 :(得分:0)
如果您不需要'LinearLayout',您可以使用'RelativeLayout'作为容器轻松完成此操作,然后在各个视图中使用android:layout_alignBaseline="@+id/title"
。