Android TextView对长文本或复杂文本计算绘制优化

//
        TextView textView = new TextView(context);
        // 在UI线程中,从TextView确定布局参数
        PrecomputedTextCompat.Params textMetricsParams = TextViewCompat.getTextMetricsParams(textView);
        // 在后台线程上计算耗时的文本段落
        PrecomputedTextCompat compat = PrecomputedTextCompat.create("", textMetricsParams);
        // 在TextView中使用生成的PrecomputedText
        TextViewCompat.setPrecomputedText(textView, compat);

        // 这使得超过90%的工作脱离了UI线程 - 提升效率
        // PrecomputedTextCompatAndroidX实现适用于L(API 21)及更高版本,因此性能提升适用于大约85%的活动设备

        // worker thread
        //解析工作线程上的跨度以减少UI线程上的负载
        // String expensiveSpanned = resolveIntoSpans(networkData.item.textData)
        //预先计算测量工作以减少UI线程上的负载
//        PrecomputedTextCompat precomputedText = PrecomputedTextCompat.create(expensiveSpanned, textMetricsParams);

        // UI thread   在UI中显示从工作线程发送的PrecomputedText
//        myTextView.setTextMetricParams(precomputedText.getParams())
//        myTextView.setPrecomputedText(precomputedText)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值