我需要实现textarea的动态高度,期望用户输入注释。我在WhatsApp上看到了textArea这样的交互。 当用户输入应该增加的文本时,文本区域最初将在1行高。但文本区域的高度不应超过3行。
答案 0 :(得分:2)
截至目前,我使用了一种解决方法来实现这一目标。
var _lines = textFieldValue.split(/\r\n|\r|\n/).length;
if(_lines > 3 || textFieldValue.length > 90) {
$.textAreaDescriptionId.height = "80dp";
} else {
$.textAreaDescriptionId.height = Titanium.UI.SIZE;
}
答案 1 :(得分:0)
我会用这样的东西:
$.textArea.height = $.textArea.font.fontSize * 3 // plus some padding
添加填充,否则会太小。 fontSize * 3是3行的最小值。
修改强>
如评论中所述。目前无法在Titanium中为TextField设置maxLines。所以它不会动态起作用。
票证和公关包含此功能: