ios - 自定义 UITableViewCell 知道哪个单元格被修改了复选框

标签 ios uitableview

我有一个带有复选框的自定义单元格,

一切正常,复选框根据我传递给子类 UITableViewCell 的字典进行检查,

但现在我需要将我的复选框被修改的确切单元格传递给具有 TableView 的类,这样我就可以为该特定单元格设置我的可变字典,使其具有新的选中或未选中状态,

那么该怎么做?我应该使用委托(delegate)吗?这很好,但问题是,我怎么知道我的复选框在哪个单元格被修改了?

最佳答案

你可以像这样使用委托(delegate)......

MyCell.h

@protocol MyCellDelegate <NSObject>

-(void)cellCheckBoxWasChanged:(MyCell *)cell;

@end

@interface MyCell : NSObject

@property (nonatomic, weak) id <MyCellDelegate> delegate;

@end

MyCell.m

@implementation MyCell

- (void)checkBoxChanged
{
    [self.delegate cellCheckBoxWasChanged:self];
}

@end

然后找到你可以做的索引......

TableViewController.m

- (void)cellCheckBoxWasChanged:(MyCell *)cell
{
    NSIndexPath *indexPath = [self.tableView indexPathForCell:cell];

    // do something to your array.
}

关于ios - 自定义 UITableViewCell 知道哪个单元格被修改了复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16520151/

相关文章:

objective-c - 使用 Singleton 类的全局变量 NSMuteableArray

ios - 当 UITableView 是 UIView 的 subview 时不调用 NSFetchedResultsControllerDelegate 方法(最初加载数据)

iphone - 在具有多个部分的 UITableView 中进行 Segue,每个部分包含从单个数组中过滤的对象

cocoa-touch - 初始化自定义 UITableViewCell

ios - 在 TableView 中移动单元格

ios - 从右到左的 Cocoa Touch 界面

ios - NSNumber = 0 的谓词

objective-c - 在 UILabel 上执行选择器会导致崩溃?

ios - 使用 Xcode 11 时,SwiftUI View 以小窗口而不是全屏呈现

ios - 如何在 Swift 中从 Core Data 中删除 UITableView 行的数据时删除该行?