#android-emulator #titanium
#android-эмулятор #titanium
Вопрос:
В моем коде я делаю это:
var taskLabel = Ti.UI.createLabel({color:'#777', top:3, textAlign:'center', height:'auto', text:task.title});
Ti.API.info('Next info is: taskLabel.height');
Ti.API.info(taskLabel.height);
Но результат этого:
[INFO] [123,883] Next info is: taskLabel.height
И ничего более, похоже, что он отключается беззвучно, но я думаю, что этого не должно быть, основываясь на API.
Я пытаюсь суммировать некоторые высоты элементов, но я бы предпочел, чтобы это вело себя как html postion:relative
. В любом случае, я хотел бы прочитать высоту в float, как я могу этого добиться?
Комментарии:
1. работает ли он с фиксированной высотой?
Ответ №1:
При использовании автоматической высоты необходимо установить фиксированную ширину. Например:
var taskLabel = Ti.UI.createLabel({color:'#777', top:3, textAlign:'center', height:'auto', width: 200, text:task.title});
Ответ №2:
вы не получите высоту, пока она не будет фактически отрисована и добавлена в view или window.
Ответ №3:
Вы не можете отключить свойство height таким образом, если вы не определяли его вручную.
Оно должно быть добавлено в представление, а затем отображено (при условии, что оно не отображается автоматически), прежде чем Titanium вернет что-либо о высоте.
var window = Ti.UI.createWindow();
var taskLabel = Ti.UI.createLabel({color:'#777', top:3, textAlign:'center', height:'auto', text:task.title});
window.add(taskLabel);
window.open();
Ti.API.info('Next info is: taskLabel.height');
Ti.API.info(taskLabel.height);
Это должно сработать, чтобы показать высоту.
Ответ №4:
Это должно сработать.
var lbl_obj = Ti.UI.createLabel( { height: 'auto', text:'Test Label', top:10 } );
var height = lbl_obj.toImage().height;
Ti.API.info(height);