在区域内的TextView中居中文本时遇到问题

时间:2010-08-05 22:05:47

标签: android android-emulator textview android-linearlayout relativelayout

我遇到了TextViews的问题,并且文本区域内的文本居中。具体来说,我有一个TextView,但是当我的文本里面包含跨越底部边缘的字母(即p,g,q,y等)时,这些字母就会被切断。我试图将文本集中在该地区,但没有太多运气。

[更新]我现在解决了使用wrap_content作为我的身高在底部截止的字母,但发现了另一个问题。现在看来,文本位于该区域的较低位置,使该间隙位于顶部。我修改了我的布局以反映最新的(见下文)。基本上,那些在(g,y,j等)之前被切断的角色正在接触正下方的区域,但是它似乎在顶部留下了填充物。我试图将引力改为center_vertical或center,但没有太多运气:

注意,我必须使用给出textSizes的规范(即我不能更改这些值)

<LinearLayout
    android:id="@+id/header"
    android:layout_width="fill_parent"
    android:layout_height="43.3dip"
    android:background="@drawable/custom_bg"
    android:orientation="horizontal">
    <ImageButton
        android:id="@+id/headshot"
        android:layout_width="43.3dip"
        android:layout_height="43.3dip"
        android:src="@drawable/sample"
        android:background="@drawable/head_btn"
        android:layout_gravity="center" />
    <RelativeLayout
        android:id="@+id/name_and_email"
        android:layout_width="230.7dip"
        android:layout_height="43.3dip"
        android:orientation="vertical">


    <TextView
        android:id="@+id/name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textColor="@color/custom_color"
        android:textSize="18.6sp"
        android:singleLine="true"
        android:ellipsize="end"
        android:layout_alignParentTop="true"
        android:gravity="center_vertical"
        android:background="#c5ff15"
        android:lineSpacingExtra="0sp"
        android:text="AaBbCcDdGgJjTtYy" />
    <TextView
        android:id="@+id/email"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:textColor="@color/custom_color"
        android:textSize="13.3sp"
        android:singleLine="true"
        android:ellipsize="end"
        android:layout_centerInParent="true"
        android:layout_below="@id/name"
        android:gravity="center_vertical"
        android:visibility="gone"
        android:text="qypgj@gmail.com" />


    </RelativeLayout>
    <ImageButton
        android:id="@+id/headshot2"
        android:layout_width="43.3dip"
        android:layout_height="43.3dip"
        android:src="@drawable/sample"
        android:background="@drawable/head_btn2"
        android:layout_gravity="center" />
</LinearLayout>

有人可以帮忙吗?

MB

1 个答案:

答案 0 :(得分:1)

为什么要手动设置高度?使用layout_height =“wrap_content”你会有更好的运气。我想象的问题是你的14.3sp的文字大小对你所允许的区域来说太大了。

此外,用于调试复杂布局的良好资源是HeirarchyViewer,可在tools文件夹下找到。