Android布局:将文本与Imagebutton对齐

时间:2015-04-11 10:57:23

标签: android xml

我正在尝试构建一个简单的布局,但我无法完成一个简单的任务:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    android:id="@+id/widget33"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
    android:id="@+id/widget43"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/widget42" />
<ImageButton
    android:id="@+id/widget42"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true" />
</RelativeLayout>

我希望图标右侧有文字,垂直居中,图标大小。我看到android:layout_alignParentTop="true"正在对齐上方的文本。我试图用其他属性改变这个,但是我无法获得结果(我是新手,所以请原谅我,如果我错过了一些愚蠢的东西)。

所以,我想获得:


----------
- 图标 - 文字
----------

而不是


----------文字
- ICON -
----------

感谢您的帮助

4 个答案:

答案 0 :(得分:0)

尝试使用它:

android:layout_alignBaseline for text:
android:layout_alignBaseline="@+id/widget42"

答案 1 :(得分:0)

RelativeLayout

android:layout_width="wrap_content"
android:layout_height="wrap_content" >

并在

TextView 

使用

android:layout_centerInParent="true"

而不是

 android:layout_alignParentTop="true"

答案 2 :(得分:0)

使用以下代码解决

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget33"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/widget43"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toRightOf="@+id/widget42"
            android:text="TextView" />

        <ImageButton
            android:id="@+id/widget42"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true" />

</RelativeLayout>

答案 3 :(得分:0)

试试这个::它对你很有用

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    android:id="@+id/widget33"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
    android:id="@+id/widget43"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="TextView"
    android:layout_marginTop="10dp"
    android:layout_alignParentTop="true"
    android:layout_toRightOf="@+id/widget42" />
<ImageButton
    android:id="@+id/widget42"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true" />
</RelativeLayout>

我在TextView中添加了一行代码:

    android:layout_marginTop="10dp"