Android - 9补丁仅用于文本

时间:2014-05-07 16:17:38

标签: android

我使用9补丁图片作为按钮背景,如此

enter image description here

之所以这样,是因为我不希望它被拉伸,我只是使用这种技术来正确显示文字:

enter image description here

问题在于,当使用Eclipse布局编辑器时,一切似乎都运行得很好,但是当我在手机上启动应用程序时,背景显示为9补丁图像。 拉伸线是强制性的吗?

N.B:我不想拉伸图像

2 个答案:

答案 0 :(得分:3)

这就是我个人的意思:

enter image description here

文本区域将垂直拉伸,也可以水平拉伸,不包括图像,但仅拉伸双面

使用此测试布局:

<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/black"
    >
    <TextView
        android:id="@+id/txtTop"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:gravity="center_horizontal"
        android:background="@drawable/orange_contact"
        android:text="My very very very long text"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold"
    />
    <TextView
        android:id="@+id/txtLeft"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@id/txtTop"
        android:layout_alignParentLeft="true"
        android:gravity="center_horizontal"
        android:background="@drawable/orange_contact"
        android:text="M\ny\n\nt\na\nl\nl\n\nt\ne\nx\nt"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold"
    />
    <TextView
        android:id="@+id/txtUnder"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/txtTop"
        android:layout_toRightOf="@id/txtLeft"
        android:background="@drawable/orange_contact"
        android:text="My multiline text\nMy multiline text\nMy multiline text"
        android:textColor="@android:color/black"
        android:textSize="20sp"
        android:textStyle="bold"
    />
</RelativeLayout>

我得到了这个结果:

enter image description here

答案 1 :(得分:1)

使用图像的确切宽度和高度作为Button(dp)的尺寸。请注意,Button(或TextView)不会根据其背景调整自己的尺寸。

OR:

您可以在人物图标的任一侧水平拉伸,并在文本区域内垂直拉伸。