使用钛中的 table 视图创建下拉菜单

creating dropdown using table view in titanium

我正在创建一个表单,其中包含一个带有默认值和可供选择的选项的下拉列表。并且表单应该有重置按钮以从下拉菜单中清除选择的选项或者 tableview.when 我点击下拉菜单它应该将包含选项扩展到 select 并且当用户 selects 选项它是 collapsed.and 如果按下重置按钮下拉值重置为默认值。

我在 google 中搜索,当我执行时我在这段代码下面得到了一些代码我只是得到一个 table 扩展视图,当我 select 一行它仍然保持扩展。

 var win = Ti.UI.createWindow({
title: 'Title goes here',
backgroundColor: '#123456'
});
var checkFlag = true;
var picker = Ti.UI.createPicker({ width:110,left:190,top:150}); 
var data = []; 

data.push(Titanium.UI.createPickerRow({title:'Karnataka'})); 
data.push(Titanium.UI.createPickerRow({title:'tamilnadu'})); 
data.push(Titanium.UI.createPickerRow({title:'kerala'})); 
data.push(Titanium.UI.createPickerRow({title:'goa'})); 
picker.add(data); 
win.add(picker);

var resetbtn = Ti.UI.createButton({
top : '100',
width : '50',
height : '35',
title  : 'Reset'
});
win.add(resetbtn);
resetbtn.addEventListener('click', function(){
Ti.API.info('checkFlag = ' + checkFlag);
if(checkFlag) {
   picker.hide();

    checkFlag = false;
} else {

   picker.show();
checkFlag = true;
}
});
win.open();    

使用 table 视图或选择器创建下拉菜单是否很好,以及如何在按下重置时设置为默认值 button.please 帮助我,我是钛新手。

您似乎对 TableView 和下拉菜单感到困惑。这两个是不同的元素,有不同的用法。

我会建议使用 Titanium.UI.Picker to create dropdown list. Also to make some value of the picker to be selected programmatically you can use setSelectedRow() 选择器的方法。

以下代码将有助于开始工作:

Ti.UI.backgroundColor = 'white';
var win = Ti.UI.createWindow({
  exitOnClose: true,
  layout: 'vertical'
});

var picker = Ti.UI.createPicker({
  top:50
});

var data = [];
data[0]=Ti.UI.createPickerRow({title:'Bananas'});
data[1]=Ti.UI.createPickerRow({title:'Strawberries'});
data[2]=Ti.UI.createPickerRow({title:'Mangos'});
data[3]=Ti.UI.createPickerRow({title:'Grapes'});

picker.add(data);
picker.selectionIndicator = true;

win.add(picker);
win.open();

var resetbtn = Ti.UI.createButton({
    bottom: '10',
    width : '50',
    height : '35',
    title  : 'Reset'
});
win.add(resetbtn);
resetbtn.addEventListener('click', resetToDefault);

function resetToDefault() {
    picker.setSelectedRow(0, 0, false); // select Bananas, i.e index 0
}