Android 如何使用LinerLayout将ImageButton左侧和TextView中心对齐?
这是我的布局。我有一个左边的图像视图和中间的文本视图在线性布局内。我在RelativeLayout内部使用LinearLayout。如果您的LinearLayout是垂直的Android 如何使用LinerLayout将ImageButton左侧和TextView中心对齐?,android,layout,textview,imagebutton,Android,Layout,Textview,Imagebutton,这是我的布局。我有一个左边的图像视图和中间的文本视图在线性布局内。我在RelativeLayout内部使用LinearLayout。如果您的LinearLayout是垂直的 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.andro
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.ravi.designdemo.Main4Activity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/navigationbar"
android:id="@id/ll1">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imb1"
android:background="@drawable/back" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv1"
android:text="Sign In"
android:textColor="#ffffff"
android:gravity="center_vertical"
android:textSize="25dp"
android:textStyle="bold"/>
</LinearLayout>
</RelativeLayout>
然后您可以将android::gravity参数设置为左或中
否则,如果ImageButton和TextView处于同一级别,则不需要使用LinearLayout,尤其是当它位于RelativeLayout内时,并且使用相对布局参数将ImageView向左对齐,将TextView居中对齐
例如,我将删除LinearLayout并执行类似操作:
android:orientation="vertical"
因为相对而言,这是居中视图的正确方式。如果线性布局是垂直的
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.ravi.designdemo.Main4Activity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/navigationbar"
android:id="@id/ll1">
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imb1"
android:background="@drawable/back" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv1"
android:text="Sign In"
android:textColor="#ffffff"
android:gravity="center_vertical"
android:textSize="25dp"
android:textStyle="bold"/>
</LinearLayout>
</RelativeLayout>
然后您可以将android::gravity参数设置为左或中
否则,如果ImageButton和TextView处于同一级别,则不需要使用LinearLayout,尤其是当它位于RelativeLayout内时,并且使用相对布局参数将ImageView向左对齐,将TextView居中对齐
例如,我将删除LinearLayout并执行类似操作:
android:orientation="vertical"
因为相对而言,这是一种正确的居中视图方式。android:layout\u gravity=“center\u vertical”
将此添加到Textview。android:layout\u gravity=“center\u vertical”
将此添加到文本视图。在线性布局中,子元素一个接一个地显示。根据您的问题,您可以使用相对布局来执行此操作,但在线性布局中不可能
android:layout_centerHorizontal="true"
在线性布局中,子元素一个接一个地显示。根据您的问题,您可以使用相对布局来执行此操作,但在线性布局中,这是不可能的
android:layout_centerHorizontal="true"
只需使文本视图宽度匹配即可提供所需布局的一些图像或草图。为此,您可以使用android:layout\u gravity
属性。您可以自己使用该值。只需使TextView宽度与父视图匹配即可提供所需布局的一些图像或草图。为此,您可以使用android:layout\u gravity
属性。自己发挥价值。