android – BoringLayout的可用性

我正在编写一个管理文本的自定义布局.
在我开始实现ViewGroup#onMeasure()方法之前,我开始挖掘EditText源代码,特别是在EditText#onMeasure()方法中.所以我遇到了 BoringLayout.我阅读了文档,但我没有找到很多解释,以及如何在实际的自定义实现中使用它.那么我的问题是如何以正确的方式使用它以及何时需要它.

解决方法

BoringLayout用于在视图上绘制文本.它被称为“无聊”,因为它只处理一行从左到右的文本而没有任何有趣的字符,如表情符号.这种简化允许类使用比默认值更高效的逻辑覆盖onDraw. Here is the source code如果你想亲眼看看.

StaticLayoutDynamicLayout一样,BoringLayout也是抽象Layout类的子类.正如文档所说,除非您正在创建自己的文本处理小部件,否则您可能不会直接使用这些类.你怎么知道你是否应该使用这些课程之一?如果您正考虑在自定义视图中使用Canvas.drawText,那么您应该考虑使用布局.他们最终也调用Canvas.drawText,但他们事先做了很多其他的处理.

如果您正在制作自己的文本小部件,那么您只能将BoringLayout用于单行,简单,从左到右的文本.对于多行和更复杂的文本,请使用StaticLayout.如果您需要在创建后动态更改文本,请使用DynamicLayout.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...