安卓给文字渐变色(文本渐变色)

效果图1

实现代码

private fun setGradient(textView: TextView) {
    val endX = textView.paint.textSize * textView.text.length
    val linearGradient = LinearGradient(
        0f, 0f, endX, 0f,
        Color.parseColor("#FFFF68FF"),
        Color.parseColor("#FFFED732"),
        Shader.TileMode.CLAMP
    )
    textView.paint.shader = linearGradient
    textView.invalidate()
}

效果图2

实现代码

private fun setGradient(textView: TextView) {
    val endX = textView.paint.textSize * textView.text.length
    val colors = intArrayOf(
        Color.RED,
        Color.GREEN,
        Color.BLUE
    ) //颜色的数组
    val position = floatArrayOf(0f, 0.7f, 1.0f) //颜色渐变位置的数组
    val linearGradient =
        LinearGradient(0f, 0f, endX, 0f, colors, position, Shader.TileMode.CLAMP)
    textView.paint.shader = linearGradient
    textView.invalidate()
}

你可能感兴趣的:(安卓给文字渐变色(文本渐变色))