我在 Stack Overflow 上阅读了一些类似的问题,但没有一个给出令人满意的答案。
我想要实现的是“设置”屏幕中的“Facebook 登录按钮”。
我想使用静态单元来实现这一点。但我很快发现我无法使用 Xcode 将“Action”连接到 UITableViewCell。
然后,我尝试使用内部带有 UIButton 的自定义 UITableViewCell 来实现相同的结果,但它导致了很多额外的样式问题,使其看起来与真正的 UITableViewCell 完全一样。
现在我设法使用以下解决方案使 UITableViewCell 表现得像一个按钮:
我将“登录按钮”UITableViewCell 的标识符更改为“登录按钮”。我将以下代码添加到表视图控制器中。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if ([[selectedCell reuseIdentifier] isEqualToString:@"loginButton"]) {
NSLog(@"Clicked");
// Execute function to run code for Login button
}
}
我现在将执行一个函数,而不是执行一个 IBAction(如果我可以像 Xcode 中的按钮一样链接它,就会出现这种情况)。
这按预期工作。但我提出这个问题的原因是:我想知道这是否是正确的方法。这个可以吗?这很糟糕吗?为什么这是好的或坏的?有更好的解决方案吗?谢谢!