Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 自定义文本视图文本不可见_Android_Kotlin_Textview - Fatal编程技术网

Android 自定义文本视图文本不可见

Android 自定义文本视图文本不可见,android,kotlin,textview,Android,Kotlin,Textview,我有一个简单的自定义TextView,它添加了圆角背景色。但是,文本是不可见的,正如您可以从绿色的小正方形中看到的那样。我也尝试在XML文件中设置文本和文本颜色,同样的事情。我哪里做错了 您正在基类内容的顶部绘制矩形。您正在基类内容的顶部绘制矩形。您必须在绘制矩形后调用super.onDraw。您必须在绘制矩形后调用super.onDraw。您必须在onDraw内部调用super.onDraw自定义文本视图的方法。您必须在自定义文本视图的onDraw方法中调用super.onDraw。谢谢,我

我有一个简单的自定义
TextView
,它添加了圆角背景色。但是,文本是不可见的,正如您可以从绿色的小正方形中看到的那样。我也尝试在XML文件中设置文本和文本颜色,同样的事情。我哪里做错了


您正在基类内容的顶部绘制矩形。

您正在基类内容的顶部绘制矩形。

您必须在绘制矩形后调用
super.onDraw

您必须在绘制矩形后调用
super.onDraw

您必须在onDraw内部调用super.onDraw自定义文本视图的方法。

您必须在自定义文本视图的onDraw方法中调用super.onDraw。

谢谢,我将
super.onDraw
移到了底部,效果很好。谢谢,我将
super.onDraw
移到了底部,效果很好
class StatusRectView(context: Context, attrs: AttributeSet) : TextView(context, attrs) {

    private var cornerRadius = 0.8f
    private val paint = Paint()
    private var size = 0  

    init {
        paint.isAntiAlias = true
        gravity = Gravity.CENTER
        setTextColor(Color.WHITE)
        text = "D"
    }

    override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec)

        size = Math.min(measuredWidth, measuredHeight)
        setMeasuredDimension(size, size)
    }

    override fun onDraw(canvas: Canvas) {
        super.onDraw(canvas)

        paint.color = Color.GREEN
        paint.style = Paint.Style.FILL

        val rectF = RectF(0f,  0f, size * 1f, size * 1f)
        canvas.drawRoundRect(rectF, cornerRadius, cornerRadius, paint)
    }
}