2015-08-25 71 views
1

我正在使用UITableView來顯示一些項目,並且我已對此UITableView實施了UISearchBarUITableView刪除搜索單元格上的複選標記

如果用戶按下單元格,將出現複選標記(單元格的附件類型發生更改),再次按下時,複選標記附件將消失。

我的問題是,當用戶使用搜索欄進行搜索時,所有選中的單元格都不再被選中,根本沒有更多的選中單元格。

我一直在試圖解決這一問題,並尋找了一段時間,但沒有結果...

任何幫助?

謝謝你。

+1

發佈一些代碼可能會幫助你獲得快速回復?我們不知道你的複選框實現 –

+0

它不是一個複選框..它的ios的本機複選標記,正如我在文中所說的...附件類型@Codecracker – user3783005

+1

你應該添加你的cellForRowAtIndexPath方法和基於你添加的邏輯,刪除複選標記。 – Natasha

回答

3

這是因爲您的表格視圖在放入檢查標記的位置以及在搜索欄中輸入內容後顯示的表格視圖不相同。要在搜索表格視圖單元格上具有相同的複選標記,您需要明確添加複選標記。

我看不到添加和刪除複選標記的方式。所以,從理論上講,你需要知道哪些單元格有複選標記。因此,假設您有一組物品和一個平行數組,其中1表示檢查標記,0表示沒有檢查標記,如果物品具有檢查標記,則表示有1或0的信號。

我們稱之爲並行數組checkMarkSignalArray。現在,在你的cellForRowAtIndexPath方法中,你可以做類似的事情 -

if(self.resultSearchController.active){ 
    cell.textLabel.text = [self.filteredItemsArray objectAtIndex:indexPath.row]; 
    if([self.checkMarkSignalArray objectAtIndex:indexPath.row]){ 
     cell.accessoryType = UITableViewCellAccessoryCheckmark; 
    } 
} 
相關問題