我正在使用Table視圖,並且在其中有一個帶有複選框的自定義單元格。只要tableview中單元格中的複選框已經通過計算某些邏輯來選擇。屏幕頂部有一個欄按鈕。我想要的是,點擊該按鈕時,與所選複選框關聯的數量應該落入數組中。Cell重用概念中的問題
例如,如果我有六個單元格當前在tableview中,所有這些都被選中,但只有四個當前可見。由於這個按鈕的點擊,只有4個值被添加到數組中。
如何檢測單擊按鈕時選擇的所有複選框? 上的按鈕的點擊的代碼是: - (IBAction爲)btn_AddRefill_click:(ID)發送方{
for (int i=0; i < [arr_RxDetails count]; i++) {
NSIndexPath * indexpath = [NSIndexPath indexPathForRow:i inSection:0];
//NSLog(@"The indexpath is %@",indexpath);
MyMedicationCell * cell = (MyMedicationCell *) [tableview cellForRowAtIndexPath:indexpath];
// here I am checking if the button is selected or not.
if ([cell.btn_RxCheck isSelected]) {
//NSLog(@"the Rx id is %@",[[arr_RxDetails objectAtIndex:i]valueForKey:@"RxId"]);
[self.arr_RxNo addObject:[[arr_RxDetails objectAtIndex:i]valueForKey:@"RxId"]];
}
}
NSLog(@"the array is %@",arr_RxNo);
[self.obj_AddRxs didSelectRxs:self.arr_RxNo];
}
如在該代碼中的循環6次運行,但它檢測到檢查框只能在4個單元格中選中,因爲它們目前可見。我該怎麼辦?
但我如何檢測加載視圖時是否檢查複選框。由於該複選框是單元格的一部分。這是所有的屬性都由單元本身管理。建議這個東西。由於價值改變的方法沒有運行在視圖加載時,所以我無法檢測複選框,因爲它是由仍然顯示4選中的tableview管理的。 – Shikhar
在您的cellForRowAtIndexPath中:當您創建單元格時,您可以將目標添加到您的UITableViewController中的方法複選框控件。在這種方法中,您可以存儲複選框是否被選中。 –