2

我正在尝试在 RelativeLayout 中使用 alignTop 属性,以便将文本设置在个人资料图片的右侧 - 与图片的顶部对齐。

这是我的布局:

<?xml version="1.0" encoding="utf-8"?>
<!-- Home fragment layout -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res/com.coapps.pico"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/background_dark_green"
    android:orientation="vertical" >

    <!-- title layout -->

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/background_fragment_title" >

        <!-- profile picture -->

        <ImageView
            android:id="@+id/fragment_home_profile_picture"
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:layout_centerVertical="true"
            android:layout_marginLeft="10dp"
            android:background="@drawable/background_profile_picture"
            android:contentDescription="@string/app_name"
            android:scaleType="fitXY"
            android:src="@drawable/test_pic" />

        <!-- user name -->

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/fragment_home_profile_picture"
            android:layout_marginLeft="10dp"
            android:layout_toRightOf="@+id/fragment_home_profile_picture"
            android:gravity="top"
            android:text="Roi Mozer"
            android:textColor="@android:color/white"
            android:textSize="30sp"/>

    </RelativeLayout>

</RelativeLayout>

这是它在预览中的样子(在手机中也是如此):

如您所见,名称中心与图片顶部对齐-不知道为什么.. 在此处输入图像描述

我怎样才能将它们都设置在同一行?

更新: 当我将布局高度更改为给定高度(而不是包装内容)时,它确实有效......

4

2 回答 2

2

问题可能出在您的图像或背景中。我用另一个图像进行了测试,两者都沿顶部对齐。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res/com.coapps.pico"
    android:layout_width="match_parent"
    android:layout_height="match_parent"

android:orientation="vertical" >

<!-- title layout -->

<RelativeLayout
    android:id="@+id/relativeLayout1"
    android:layout_width="wrap_content"
    android:layout_height="200dp"
    android:background="@drawable/background_fragment_title"
    >

    <!-- profile picture -->

    <ImageView
        android:id="@+id/fragment_home_profile_picture"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:src="@drawable/falcao_large"
        android:contentDescription="@string/app_name"
        android:scaleType="fitXY"
        />

    <!-- user name -->

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/fragment_home_profile_picture"
        android:layout_marginLeft="10dp"
        android:layout_toRightOf="@+id/fragment_home_profile_picture"
        android:gravity="top"
        android:textColor="@android:color/white"
        android:text="Roi Mozer"

        android:textSize="30sp"/>

</RelativeLayout>

在此处输入图像描述

我认为问题是图像背景。文本与背景顶部对齐

于 2013-10-12T14:40:46.330 回答
0

干得好

向 textView 添加填充,

于 2013-10-12T13:59:24.220 回答