0

기본 SearchBar가 기본 TableView에 첨부되어 있습니다. 그것은 잘 작동하지만 사용자가 검색 창에 입력을 시작할 때까지 모든 테이블 행을 표시하지 않으므로 항상 필터링되며 모든 일치하는 행이 테이블에 표시되지 않습니다.검색이 수행 될 때까지 표 행 숨기기

var searchbar = Ti.UI.createSearchBar(); 

var tv = Ti.UI.createTableView({ 
     data: myData, 
     search: searchbar, 
     hideSearchOnSelection: false, 
     filterAttribute: 'title', 
}); 

어떻게 끝나나요?

답변

1

당신 사용자가 검색 창에 입력을 시작하면 페이지가로드 한 후 :,

var searchbar = Ti.UI.createSearchBar(); 

searchbar.addEventListener('change', function(e){ 
    Ti.API.info("calling change event"); 
    var tableData = [ {title: 'Apples'}, {title: 'Bananas'}, {title: 'Carrots'}, {title: 'Potatoes'} ]; 
    tv.data = tableData; 
    //Remove this event listener so the data is only set once 
    e.source.removeEventListener(e.type, arguments.callee); 
}); 

var tv = Ti.UI.createTableView({ 
     data: [{}], 
     search: searchbar, 
     hideSearchOnSelection: false, 
     filterAttribute: 'title', 
     height:Ti.UI.SIZE 
}); 

var win = Ti.UI.createWindow() 

win.add(tv); 
win.open(); 
을 예컨대의 데이터를 설정할 때 비어 할 수있는 tableView의 데이터를 설정하려고 할 수 있습니다
관련 문제