我正在尝试在彩色圆圈中显示一些文字,但它无法正常工作。这就是我渲染文本的方式 -
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="GO"
android:background="@drawable/scancircle"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:textColor="#ffffff"
android:textSize="18dp"
android:padding="9dp"
android:onClick="Go"
/>
这就是scancircle.xml
的样子 -
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="ring"
android:innerRadius="93dp"
android:thickness="1dp"
android:useLevel="false"
>
<solid android:color="@color/primary" />
<stroke
android:width="2dp"
android:color="@color/txtVwBackground"
/>
<padding
android:left="2dp"
android:right="2dp"
android:top="2dp"
android:bottom="2dp"
/>
</shape>
尽管scancircle的预览正确显示了圆圈,但文字后面没有圆圈渲染。谁能说出这是为什么呢?
提前致谢。
答案 0 :(得分:0)
嗯,实际上你没有使用圈,你使用 ring ,它在中间有一个洞。在你的情况下,这个洞的半径为93dp,使其大于TextView
本身。因此,您在文本背后看到的是环的孔部分,它是透明的。
您可能希望将oval
形状用于文本背后的&#34;圈&#34;效果。