我有一个tableview,用于多种用途。内部didselectRowAtIndex
代表
我分配了NSArray
并初始化了一些值。
NSArray *param=[[NSArray alloc] initWithObjects:selectedCell.textLabel.text,status,selectedCell.tag, nil];
但是这一行给出了错误BAD_ACCESS_code= EXC_ARM_DA_ALIGN
。这是什么原因以及如何解决这个问题
`
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *selectedCell=[tableView cellForRowAtIndexPath:indexPath];
NSArray *param=[[NSArray alloc] initWithObjects:selectedCell.textLabel.text,status,selectedCell.tag, nil];
if ([self.delegate respondsToSelector:@selector(selectedTableRowAUTOCREATION:)]) {
[self.delegate selectedTableRowAUTOCREATION:param];
}
}
`
由于
答案 0 :(得分:1)
selectedCell.tag
的值不是对象。你不能把它放到一个数组中。
如果您需要跟踪标识符,则需要通过执行类似@(selectedCell.tag)
的操作将其设置为NSNumber - 然后当您需要访问该值时,您可以执行{{1}得到它。