如何在中间显示带有文字的标签?

时间:2014-05-10 03:28:49

标签: android android-layout textview

我正在尝试使用白色背景和圆角以及中间的文本来获取TextView。

看起来像这样:

enter image description here

到目前为止,我有这个,但它没有给我上述效果。

        <TextView
            android:textColor="#000000"
            android:background="#FFFFFF"
            android:text="0" />

2 个答案:

答案 0 :(得分:3)

首先,我将创建一个自定义可绘制资源,以便轻松实现圆角。

(将其置于res / drawable中)

<强> my_bg.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <solid
        android:color="ffffff" />

    <corners
        android:radius="15dp"/>

    <stroke
        android:width="1dp"
        android:color="@android:color/black" />

</shape>

如果你想进入更高级的drawables(渐变,图层列表,动画等等),可以找到关于xml drawable资源的更多信息right here

然后在xml布局文件中更改TextView以匹配:

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="8dp"
        android:textColor="#000000"
        <!--refer to your custom drawable from earlier-->
        android:background="@drawable/my_bg"
        <!--center text within TextView-->
        android:gravity="center"
        android:text="0" />

我希望这会有所帮助,Happy Coding!

答案 1 :(得分:0)

设置重力

android:gravity="center"

http://developer.android.com/reference/android/widget/TextView.html#attr_android:gravity

您缺少TextView的宽度和高度属性。

对于圆角,请使用Shape Drawable

http://developer.android.com/guide/topics/resources/drawable-resource.html#Shape

在res / drawable下

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle"
    >
   <solid android:color="#FFFFFF"/> 
    <corners android:radius="7dp" />
    <stroke android:width="5px"  />
</shape>

然后

<TextView
  android:layout_width="100dp"
  android:layout_height="50dp"
  android:background="@drawable/background"
  android:gravity="center"
  android:text="0"
  android:textColor="#000000" />

对齐

enter image description here