问题标签 [staticlayout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2736 浏览

android - Android:如何在图像的静态布局中限制最多两行

我有一张图片,我必须在上面写下顶部和底部的文字,我使用静态布局在上面写字。下面是它的代码

我想将文本限制为最多两行。如果用户输入长文本,如果超过 2 行,则减小字体大小,使其只能调整为 2 行。

0 投票
1 回答
642 浏览

android - 为什么调用StaticLayout.Builder会抛出异常java.lang.NoClassDefFoundError?

Android M 更改了 StaticLayout 的设置器,取而代之的是 Builder 模式。但是使用以下代码:

我得到以下异常:

进程:sharpdevs.com.legalapp,PID:7695 java.lang.NoClassDefFoundError:解析失败:Landroid/text/StaticLayout$Builder;

我已经尝试了一切,这可能是 Android 错误还是我缺少支持库依赖项?

0 投票
1 回答
1687 浏览

android - Android文本布局Spacingmult和Spacingadd?

在 Android 的构造函数中StaticLayout,整数参数spacingmultspacingadd做什么?而且我也对includepad参数感到困惑。文档中没有解释。

0 投票
2 回答
1019 浏览

android - 如何在 StaticView 中将“文本方向”设置为 RTL

我正在使用 StaticLayout 并使用一些 RTL 文本。问题是它不能很好地处理 RTL。在TextView你可以设置一个“textDirection”。这里也有什么办法吗?谢谢!

0 投票
1 回答
559 浏览

android - 静态布局与文本视图

为什么我们需要一个StaticLayout?它有什么我们不能用 a 做的TextView

我问这个的原因是因为我使用“Exo Player”StaticLayout来显示字幕而且我在 RTL 上遇到了一些麻烦。标点符号显示不正确,所以我想用TextView. 有什么理由我不应该这样做?

谢谢!

0 投票
0 回答
59 浏览

view - 使用 StaticLayout(多行)在自定义视图中绘制光标

如果我有:

如何在文本中绘制光标?

0 投票
1 回答
226 浏览

android - 带有大文本的 StaticLayout OutOfMemoryError

当我使用 StaticLayout 创建大文本 (~6mb) 的分页时出现错误。这是我的日志:

有什么建议可以解决这个错误吗?或者有没有替代的解决方案?

0 投票
0 回答
262 浏览

android - StaticLayout 使用 Android Nougat 渲染错误

我通过渲染文本StaticLayout并将其绘制onDraw()在我的自定义视图中,而不是TextView. 一切正常,直到我使用Android Nougat. 在某些情况下,StaticLayout错误地创建了lineWidthouterWidth我传入的更大的constructor()。所以它会导致我的自定义视图呈现错误。(限制区域外)
Android Marshmallow,预期结果。
在此处输入图像描述

Andorid Nougat,意想不到的结果。
在此处输入图像描述

我不知道导致该错误的规则是什么。(如果我更改了 outerWidth 或文本,则不会发生错误。)
有人可以帮助他们吗?提前致谢。

0 投票
1 回答
202 浏览

android - TextView 和 EditText 中的文本渲染

我有一个像这样的简单布局:

一个 TextView 和一个 EditText。当我在它们中设置相同的文本时,似乎每个都以不同的方式呈现文本。如下所示: 顶视图是 EditText,下面是 TextView

我正在使用 StaticLayout 来测量文本并识别每行中的文本边界,并且我必须将文本设置为 TextView(因此用户无法编辑或选择它)。

但似乎 StaticLayout 文本边界计算与 EditText 而不是 TextView 匹配。

我的问题是为什么 TextView 和 EditText 中的文本渲染不同,以及如何使用 StaticLayout 测量文本并将文本设置为 TextView 以便每行的开始和结束偏移量与用户在 setText 后看到的结果完全匹配

0 投票
1 回答
1452 浏览

android - 使用 TextView 和 StaticLayout 测量 ImageSpan 大小

我有一个简单的布局,只包含一个TextView.

我想TextView使用 ImageSpan 加载图像。

下面的方法创建Spannable

我使用这种方法来创建这样的内容:

当我调用setContent()方法时,我的结果是这样的:

ImageSpan 上方的小间隙

如您所见, ImageSpan 和 top of 之间存在很小的差距TextView

这不是行距,因为我将行距设置为 0。

有趣的一点是,当我从内容(在 setContent 方法中声明)中删除“\n”时,这个空间就消失了。

另一点是,当我尝试使用 测量内容大小时StaticLayout,在第 0 行的末尾带有“\n”,它返回 270,没有“\n”,它返回 260。

这种行为给我带来了一些困难,因为我必须测量 text 和 ImageSpan 使用StaticLayout并决定一个可以适应的女巫TextView

我很感激每个人都可以帮助我。

谢谢。

这是我的xml

我做了一些测试,发现字体大小会影响 ImageSpan 渲染。

有人可以解释一下这种影响吗?