Flex:删除标签中文本周围的所有空格

Posted

技术标签:

【中文标题】Flex:删除标签中文本周围的所有空格【英文标题】:Flex: Remove all space around text in label 【发布时间】:2011-04-28 04:07:07 【问题描述】:

如果我在 Flex 中创建 mx:Labelmx:Text 控件,然后为其设置 opaqueBackground,我注意到文本周围有一些空间。

我希望能够摆脱文本与标签顶部和底部完全齐平的空间。更改间隙、填充和领先似乎没有帮助。是否可以让文本与标签的两侧完全齐平?

谢谢。

【问题讨论】:

您尝试了哪些填充?包含文本的容器是否应用任何额外的填充/间隙 什么容器里面有文字? mx:Label 还是 mx:Text?我不知道它是否应用了更多的填充/间隙。我知道对于这两个组件,我将 paddingLeft、paddingRight、paddingTop、paddingBottom、verticalGap、horizo​​ntalGap 设置为 0。 【参考方案1】:

您需要尝试给 Label 负 paddingTop 和 paddingBottom 直到它刷新。

【讨论】:

【参考方案2】:

问这个问题已经有一段时间了,但我认为问题在于标签和文本将 UITextField.TEXT_HEIGHT_PADDING 的值添加到一些测量内容(文本中的测量高度,标签中的 lineMetrics),这会导致这些控件出现有点不同。

如果您检查,UITextField.TEXT_HEIGHT_PADDING 属性的当前值为 4,但它是一个 mx_internal 属性。我所做的是将 paddingTop 设置为-2,它似乎可以解决问题。我认为搞乱 measureHeight 可能会破坏 Label 和 Text 中的其他一些东西,所以我只是用填充来解决它......

【讨论】:

【参考方案3】:

我发现最好的方法(删除所有填充/间距)是实际使用包装器(如 Canvas)来包装标签并根据需要进行自定义。

有点难看,但这是我找到的唯一方法。

【讨论】:

【参考方案4】:

恕我直言,它应该在 flex 中工作,高度也一样:

label.width = label.textWidth

【讨论】:

这不起作用。它只是开始切断标签的文本部分。

以上是关于Flex:删除标签中文本周围的所有空格的主要内容,如果未能解决你的问题,请参考以下文章

Haml:控制文本周围的空格

从文本中删除所有空格

整合去除HTML 标签, 去除开头结尾换行,将连续空格合并为一个

Webview 删除 HTML 实体前后的所有空格

在第n次出现空格后删除所有文本

word删除文档中所有空格