重写TextView的setText出现异常问题

Android2023年3月11日 am8:08发布1年前 (2023)更新 3XCN.COM站长
0 0 0
广告也精彩
目录

前言

TextView重写setText(CharSequence text, BufferType type) 时出现如下异常日志(截取部分日志):

java.lang.NullPointerException: Attempt to invoke interface method 'int java.lang.CharSequence.length()' on a null object reference
        at android.text.BoringLayout.isBoring(BoringLayout.java:325)
        at android.widget.TextView.makeSingleLayout(TextView.java:8332)
        at android.widget.TextView.makeNewLayout(TextView.java:8204)
        at android.widget.TextView.onMeasure(TextView.java:8586)
        at androidx.appcompat.widget.AppCompatTextView.onMeasure(AppCompatTextView.java:554)
        at android.view.View.measure(View.java:23169)
        at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:715)
        at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:461)
        at android.view.View.measure(View.java:23169)
        at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6749)
        at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)

正文

重写setText(CharSequence text, BufferType type) 是为了对比text,由于我加了判断添加,代码没有走

super.setText(text, type);

就出现这个问题。

解决方式,就是不论添加什么条件,一定要执行super.setText(text, type)。

参考文章

  1. android 9.0设备 android.text.BoringLayout.isBoring异常 - 简书 (jianshu.com)

版权声明 1、 本站名称: 91易搜
2、 本站网址: 91es.com3xcn.com
3、 本站文章: 部分来源于网络,仅供站长学习和参考,若侵权请留言
广告也精彩

相关文章

广告也精彩

暂无评论

评论审核已启用。您的评论可能需要一段时间后才能被显示。

暂无评论...

网站升级中

公告

近期网站升级中,可能存在一些bug。欢迎反馈 https://www.91es.com/we.html

本站域名

本站域名 : 91es.com3xcn.com。本站邮箱 : 站长邮箱 i@oorr.cn,通知邮箱we@oorr.cn ,如有更新,请看公告 。