簡體   English   中英

表格視圖單元格中的復選框問題

[英]Checkbox Issue in tableview cell

我在表格視圖單元格中有一個多個復選框,單元格總數為 4,我想一次 select 一個復選框,如果我 select 任何一個復選框和表格視圖單元格按鈕中的一個按鈕也被禁用,則所有復選框都未選中其他單元格,所以我如何實現這個邏輯。 在這里我實現圖像檢查和取消檢查邏輯

func setupData(plansModel: [Plans], mainRowIndex: Int, selctedPlan: Int, isAllUnselected: Bool){
    self.plansModel = plansModel
    indexMain = mainRowIndex
    selectedPlanId = selctedPlan
    self.isAllUnselected = isAllUnselected
    self.changePlanBtn.isHidden = isAllUnselected
    
    priceTableView.reloadData()
}

我將此變量用於數據並管理復選框

我想你想要這個

第一的

第二

你可以這樣做! 第一變數

var selectedIndex: IndexPath = IndexPath(row: 0, section: 0)

在 tableview didselecte 方法的第二個添加這個

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    let previousSelectedIndex = selectedIndex
    selectedIndex = indexPath
    checkBoxTableView.reloadRows(at: [previousSelectedIndex, selectedIndex], with: .none)
}

第三個也是最后一個在 tableview cellForRow 方法中添加此代碼

if selectedIndex.row == indexPath.row {
    cell.accessoryType = .checkmark
} else {
    cell.accessoryType = .none
}

我想你的答案已經解決了。

這僅針對 realod 兩行而不是整個 tableview 進行了編輯(此編輯 rafrence 由paulw11 )。

謝謝Paulw11的幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM