Ios 向UITableViewCell添加隐藏信息

Ios 向UITableViewCell添加隐藏信息,ios,objective-c,cocoa-touch,uitableview,Ios,Objective C,Cocoa Touch,Uitableview,代码中是否有向UITableViewCell添加一些隐藏信息的方法 用例: 在活动提要中,调用(UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath,每个单元格都有一个活动。每个都有自己独特的“activityId” 每个单元格中都有一些按钮(带有唯一的标记),按下时,给定的活动是“喜欢的” 每个按钮都有一个IBOutlet,然后调用模型来处理类似的内容

代码中是否有向UITableViewCell添加一些隐藏信息的方法

用例:

  • 在活动提要中,调用
    (UITableViewCell*)tableView:(UITableView*)tableView cellForRowAtIndexPath:(NSIndexPath*)indexPath
    ,每个单元格都有一个活动。每个都有自己独特的“activityId”
  • 每个单元格中都有一些按钮(带有唯一的标记),按下时,给定的活动是“喜欢的”
  • 每个按钮都有一个IBOutlet,然后调用模型来处理类似的内容
我对IBOutlet的代码是:

- (IBAction)buttonUp:(UIButton *)sender {

UIButton *btn = (UIButton *) sender;
UITableViewCell *cell = (UITableViewCell *) [[btn superview] superview];

UIView *cellView = [cell.contentView viewWithTag: ..myUniqueButtonTag.. ];

NSLog(@"activityId is: %@", ...);
}

听起来你需要创建一个自定义UITableViewCell类,如果你想在单元格中做更复杂的事情,那么标准类允许-

听起来你需要创建一个自定义UITableViewCell类如果你想在单元格中做更复杂的事情,那么标准类允许-

你不应该做
超级视图洗牌
[[btn superview]superview]
,因为它迟早会坏的

我同意@ansible的观点,即您应该创建一个自定义单元格并使用委托关系,以便按钮告诉单元格它被点击,而单元格告诉委托。这是最好和最合适的解决方案


对于骗子,请考虑在按钮上使用<代码> ObjcStEngCaseObjultOb/Cuff>将ID信息与它联系起来,以便在动作方法中访问它。

< P>不应该做<代码> Suffview Suffle < /C>:<代码> [BTN SuxVIEW Suffview ] < /C> >因为它迟早会中断。

我同意@ansible的观点,即您应该创建一个自定义单元格并使用委托关系,以便按钮告诉单元格它被点击,而单元格告诉委托。这是最好和最合适的解决方案


对于骗子,请考虑在按钮上使用<代码> ObjcStEngCaseObjultOb/Cuff>将ID信息与它联系起来,以便在动作方法中访问它。

我唯一需要的是ActuviyID…我真的需要一个全新的子类吗?如果你的id是NSNumber,也许你可以使用tag属性。但是,如果您真正需要做的只是添加一个属性,那么子类化UITableViewCell将很容易。如果你想扩展它将要做的事情,将来拥有一个子类可能会很有用。我可能会想(实际上,需要这样做)。因此,这似乎是最好的做法。从你的头顶上,知道我在设置它时应该避免的任何大陷阱吗?编辑:将在时间限制后接受此答案作为正确答案我发现自动布局可能有点棘手-查看此答案和github项目,以获取具有可变高度的自定义单元格示例。我觉得这很有帮助我唯一真正需要的是活动ID。。。我真的需要一个全新的子类吗?如果你的id是NSNumber,也许你可以使用tag属性。但是,如果您真正需要做的只是添加一个属性,那么子类化UITableViewCell将很容易。如果你想扩展它将要做的事情,将来拥有一个子类可能会很有用。我可能会想(实际上,需要这样做)。因此,这似乎是最好的做法。从你的头顶上,知道我在设置它时应该避免的任何大陷阱吗?编辑:将在时间限制后接受此答案作为正确答案我发现自动布局可能有点棘手-查看此答案和github项目,以获取具有可变高度的自定义单元格示例。我觉得这很有帮助使用cell.accessibilityValue并为其分配数据。。单击“查找该单元格及其accessibilityValue”时,请使用cell.accessibilityValue并为其分配数据。。当单击“查找该单元格及其可访问性值”时,我已经创建了一个自定义单元格,但当按下按钮时,我依靠
[[btn superview]superview]superview]
获取自定义单元格的类。关于你的第一句话,有没有更好的方法?将单元格作为button方法的目标,并让它转发操作。我已经制作了一个自定义单元格,但当按下按钮时,我依靠
[[[btn superview]superview]superview]
获取自定义单元格的类。关于你的第一句话,有没有更好的方法?将单元格作为按钮方法的目标,并让它向前移动。