我正在Appcelerator Titanium开发移动应用程序。我用文本创建了很少的标签,我需要在创建之前确定标签的宽度。我知道关于params的所有内容(text,fontSize,fontWeight等)。我怎样才能确定它们的宽度?适用于Android。
答案 0 :(得分:1)
我很幸运StyledLabel module,适用于iOS和Android。这允许通过HTML在标签内进行一些样式设置,其标签非常类似于标准Ti.UI.Label
控件。它不是完美的,会比标准Label
重一点,但应该比WebView
更轻量级。使用StyledLabel
的最大优势之一是,与WebView
不同,它会扩展和收缩以填充规则,而WebView
需要定义的宽度。
如果您只是为iOS构建,那么我建议使用该模块,但如果您正在为Android构建,则不需要它,因为Android Label
控件可以采用一些简单的HTML。我目前正在一个制作项目中使用它,并且在大多数情况下它工作得很好,但在TableView
内并不好。
我提到使用HTML的原因是,使用单个控件可能会比一些控件更好,而不是多个控件,以获得一些文本字符串的外观,其中某些部分的颜色不同。
也许将它与控件的postlayout
事件相结合可以进一步帮助您,因为您应该能够通过width
和height
属性获取控件的宽度和高度,或通过size
属性(size.width
和size.height
)。然后,您可以根据标签的位置定位控件。