是否可以在Titanium.UI.PickerRow中添加自定义属性?
在下面的代码中,我想添加自定义属性“index”(使用applyProperties PickerRow方法)
var daysRows = [];
for (var i = 0, j = days.length; i < j; i++) {
var currentRow = Ti.UI.createPickerRow({
title : days[i],
});
//adding custom property to identify selection
currentRow.applyProperties({index:i});
daysRows.push(currentRow);
};
但是当稍后迭代PickerRow对象时,我无法获得自定义属性索引。我所看到的只是Titanium属性标题。
我使用下面的代码来迭代可用的属性。
button.addEventListener('click', function(e) {
..............
var selectedRow = picker.getSelectedRow(2);
for (var k in selectedRow) {
Ti.API.info('key is: ' + k + ', value is: ' + selectedRow[k]);
}
});
我做错了什么?有什么办法可以在PickerRow中添加自定义属性吗?
答案 0 :(得分:0)
这是Android平台中的Titanium/Appcelerator issue。
此问题见于Titanium SDK 3.1.1,未在2013年8月发布的3.1.2版本中修复。
jira.appcelerator.org/browse/TIMOB-14285现已关闭。此操作应该从版本6.1.0开始运行。
答案 1 :(得分:0)
这是旧的,但我遇到了类似的问题。我发现的解决方法是在创建时传递属性而不是应用
Ti.UI.createPickerRow({title: 'My Row', customId: 1});
这可能不适合所有人,但为我工作