TextView设置不同的点击事件与不同的颜色(kotlin版)
2018-03-06 15:07
1096 查看
设置不同的点击事件
使用
flag属性
class TextClick(val content: String, val context: Context) : ClickableSpan() { override fun onClick(widget: View?) { when (content) { "《委托扣款协议》" -> { "《委托扣款协议》被点击了".toast() } "《快捷支付服务和相关协议》" -> { "《快捷支付服务和相关协议》".toast() } } } override fun updateDrawState(ds: TextPaint?) { super.updateDrawState(ds) //需要设置,否则默认为蓝色 也可以设置字体颜色 ds?.setColor(context.getResources().getColor(R.color.color_333)); //去下划线 ds?.isUnderlineText = false } }
使用
val arg1 = "《委托扣款协议》" val arg2 = "《快捷支付服务和相关协议》" val spanArg1 = SpannableString(arg1) val spanArg2 = SpannableString(arg2) val clickttt = TextClick(arg1, this) val clicksss = TextClick(arg2, this) spanArg1.setSpan(clickttt, 0, arg1.length, Spanned.SPAN_INCLUSIVE_EXCLUSIVE) spanArg2.setSpan(clicksss, 0, arg2.length, Spanned.SPAN_INCLUSIVE_EXCLUSIVE) tvArgeement.text = "同意" tvArgeement.append(spanArg1) tvArgeement.append("和") tvArgeement.append(spanArg2) tvArgeement.movementMethod = LinkMovementMethod.getInstance()
flag属性
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括) Spanned.SPAN_INCLUSIVE_EXCLUSIVE(前面包括,后面不包括) Spanned.SPAN_EXCLUSIVE_INCLUSIVE(前面不包括,后面包括) Spanned.SPAN_INCLUSIVE_INCLUSIVE(前后都包括)
相关文章推荐
- TextView中的文本加效果,如设置不同颜色,大小或点击事件
- textview设置多种不同的字体颜色和点击事件
- Android中为TextView中的部分文字设置颜色和点击事件
- 安卓开发 给textview添加点击事件并设置点击颜色
- 一个Text,设置不同的颜色,有颜色部分添加点击事件
- 一个textview设置特殊的字体样式,颜色,并且设置特殊字体点击事件
- Android TextView实现不同字体颜色并添加点击事件
- Android 关于TextView中,设置指定部分文字改变颜色,和指定部分文字点击事件
- TextView设置指定部分文字改变颜色,和指定部分文字点击事件
- TextView 设置部分文字颜色及点击事件SpannableString
- TextView设置部分文字颜色和点击事件
- android textview可以设置文字颜色 部分文字点击事件处理
- android textview 中部分内容 颜色 样式 点击事件的设置9
- 让TextView展示不同颜色字体,让局部字体拥有点击事件
- android TextView、EditText对部分内容设置颜色、字体、超链接、图片、点击事件
- android TextView改变部分字体的颜色,大小,设置部分字体有点击事件
- Android-TextView设置多种颜色及部分点击事件
- Textview增加图片并实现点击与文字设置不同大小颜色
- 对于TextView某些字符设置点击事件和改变颜色
- 自定义TextView设置边框与背景颜色添加点击事件,点击更改随机数与背景