将动态文本框向上移动(如果它换行),以阻止它覆盖下面的下一个文本框或

Posted

技术标签:

【中文标题】将动态文本框向上移动(如果它换行),以阻止它覆盖下面的下一个文本框或【英文标题】:Move dynamic text box higher, if it wraps, to stop it from covering up the next text box below or 【发布时间】:2017-11-17 11:42:19 【问题描述】:

我有两个动态文本框放在一起。有时第一个文本框会换成两行,这意味着它会覆盖第二个文本框。我怎样才能检测到第一个文本框已经换成两行,如果是这样,将文本框移高一点(我不能移动第二个文本框,第一个文本框上面有一些可以使用的空间)。

谢谢

【问题讨论】:

发布您的代码。 【参考方案1】:

您可以获得文本的边界。

var bounds = text1.getBounds();
// Note, add in bounds.y to account for the text baseline
text2.y = text1.y + bounds.y + bounds.height + paddingValue;

Bounds 相当准确,但并不完美。

【讨论】:

以上是关于将动态文本框向上移动(如果它换行),以阻止它覆盖下面的下一个文本框或的主要内容,如果未能解决你的问题,请参考以下文章

如果键盘阻止了文本视图,则移动 UIView

Tkinter 网格动态布局

SwiftUI Text scaledToFit 和换行

使用向上和向下的文本框键在 datagridview 中移动

excel一个单元格,输入字太长怎么让它换行?

使用 CSS 调整换行文本的大小 [重复]