jquery で自動提案ドロップダウンを実装できます。現在、titanium で同じ機能を実装していますが、グーグルで調べたところ、titanium の自動提案ドロップダウンにはあまり見つかりませんでした。
自動消化の方法を提案できますか。
配列(要素)があることを意味します。テキストフィールドをクリックすると、関連する要素が表示されます。
jquery で自動提案ドロップダウンを実装できます。現在、titanium で同じ機能を実装していますが、グーグルで調べたところ、titanium の自動提案ドロップダウンにはあまり見つかりませんでした。
自動消化の方法を提案できますか。
配列(要素)があることを意味します。テキストフィールドをクリックすると、関連する要素が表示されます。
次のコードを試して、必要に応じて変更してください。ここでは、配列(searchArray)をデータストレージとして使用しました(要件に応じて、データベースフィールドまたはソースに置き換えることができます)。
//Table view showing your autocomplete values
var tblvAutoComplete = Ti.UI.createTableView({
width : '100%',
backgroundColor : '#EFEFEF',
height : 0,
maxRowHeight : 35,
minRowHeight : 35,
allowSelection : true
});
//Starts auto complete
txtAutoComplete.addEventListener('change', function(e){
var pattern = e.source.value;
var tempArray = PatternMatch(searchArray, pattern);
CreateAutoCompleteList(tempArray);
});
//You got the required value and you clicks the word
tblvAutoComplete.addEventListener('click', function(e){
txtAutoComplete.value = e.rowData.result;
});
//Returns the array which contains a match with the pattern
function PatternMatch(arrayToSearch, pattern){
var searchLen = pattern.length;
arrayToSearch.sort();
var tempArray = [];
for(var index = 0, len = arrayToSearch.length; index< len; index++){
if(arrayToSearch[index].substring(0,searchLen).toUpperCase() === pattern.toUpperCase()){
tempArray.push(arrayToSearch[index]);
}
}
return tempArray;
}
//setting the tableview values
function CreateAutoCompleteList(searchResults){
var tableData = [];
for(var index=0, len = searchResults.length; index < len; index++){
var lblSearchResult = Ti.UI.createLabel({
top : 2,
width : '40%',
height : 34,
left : '5%',
font : { fontSize : 14 },
color : '#000000',
text : searchResults[index]
});
//Creating the table view row
var row = Ti.UI.createTableViewRow({
backgroundColor : 'transparent',
focusable : true,
height : 50,
result : searchResults[index]
});
row.add(lblSearchResult);
tableData.push(row);
}
tblvAutoComplete.setData(tableData);
tblvAutoComplete.height = tableData.length * 35;
}
このコードは、ios と android の両方で機能しました。あなたの問題が解決されることを願っています:D