我有以下代码(textinput)。
<s:TextInput id="label"
text="just testing"
width="100%"
height="200"
contentBackgroundColor="#aaaaaa"
styleName="normalText">
</s:TextInput>
我很难找到如何将文本(“只是测试”)对齐到顶部。 我检查了Adobe文档,但似乎没有可用于此属性的垂直对齐属性。
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/controls/TextInput.html
我意识到有一个textarea组件可用,但由于性能原因,我需要使用textinput。
topPadding似乎适用于mx
<mx:TextInput
id="txt"
paddingTop="5"
text="I am Vertically aligned text"
textAlign="center"
width="250"
height="250">
</mx:TextInput>
任何提示都将不胜感激。
谢谢!
答案 0 :(得分:0)
如果字体大小永远不变,只需使用paddingBottom
即可。因为默认情况下,垂直对齐设置为middle
,单独减少paddingTop
不足以使文本充分移动;无论如何,它默认设置为1px。您还必须增加paddingBottom
。我无法给出确切的数字:这取决于字体的大小,因此您必须稍微调整一下这些值。
<s:TextInput paddingBottom="6"/>
如果您希望您的解决方案可以使用任何类型的字体重复使用,那么您必须为TextInput创建自定义外观。幸运的是,这并不太难:
spark.skins.spark.TextInputSkin
my.skins.TopTextInputSkin
RichEditableText
的{{1}}代码(位于底部)textDisplay
属性设置为verticalAlign
top