如何在Android中使用数字创建通知圈?

时间:2018-06-03 14:26:56

标签: android android-layout drawable android-drawable

我需要创建一个带数字的圆圈。但问题是有些数字不在中心位置,例如1位于中心位置。

<shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <corners android:radius="18dp"/>
        <solid android:color="@color/black"/>
</shape>

这个Drawable是TextView的背景

3 个答案:

答案 0 :(得分:1)

尝试使用属性

android:includeFontPadding="false"

 <TextView
    android:layout_width="18dp"
    android:layout_height="18dp"
    android:background="@drawable/test"
    android:gravity="center"
    android:textColor="@color/colorAccent"
    android:includeFontPadding="false"
    android:text="1"/>

val()

答案 1 :(得分:1)

创建文件xml可绘制文件。

    <?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        >
        <shape
            android:shape="oval">
            <solid android:color="#0288D1" />
        </shape>
    </item>
    <item>
        <shape
            android:shape="oval">
            <stroke android:width="2dp"
                android:color="#FFd200"/>
        </shape>
    </item>
</layer-list>

答案 2 :(得分:0)

round.xml 中创建文件drawable

将此设置为textview

的backgroundResourse
<?xml version="1.0" encoding="utf-8"?>
<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval" android:useLevel="true"
    android:dither="true">
    <solid
        android:color="@android:color/white"/>
    <stroke
        android:color="@color/switcher_grey"
        android:width="@dimen/_1ssp"/>
</shape>