我在UIViewController中有一个UITableView,如下所示:
.h
@interface OutageListViewController : UIViewController<UITableViewDelegate,UITableViewDataSource> {
IBOutlet UITableView *outageTable;.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"Selected");
}我已经定制了表格单元:
//编辑我的自定义视图上有一个并排的fire UILabel,以及一个遍布整个区域的背景。但是,在调整/删除了我放在自定义单元格上的背景图像和标签之后,"didSelectRowAtIndexPath“仍然没有被调用。//结束编辑
@interface AbstractSummaryListViewCell : UITableViewCell {...}和
@interface FiveColumnSummaryCell : AbstractSummaryListViewCell {...}此UIView位于另一个UIView中:
@interface CustomTabBarController : UIViewController {
OutageListViewController *outageListViewController;和我的AppDelegate将这个添加到窗口中:
[window addSubview:[customTabBarController view]];现在,我正在尝试确定哪个单元格被单击,而didSelectRowAtIndexPath没有被调用,我让dataSource和委托从UITableView连接到文件的所有者,实际上,数据按照我的"cellForRowAtIndexPath“指定的方式正确填充,有什么想法可以解决这个问题吗?
谢谢!
发布于 2011-08-03 00:44:14
我解决了这个问题:忘记在我的自定义单元xib中选中启用用户交互的。真是个笨蛋!
发布于 2011-08-02 10:03:53
以下是UITableView all YES的属性
Edit:我认为Paul是对的。delegate属性有一些问题。您可以在-(空)viewDidLoad中检查tableView的委托属性。如您所说,它们应该连接到xib中的FileOwner。所以下面的代码不会得到nil。
- (void)viewDidLoad {
[super viewDidLoad];
// They should not be nil.
NSLog(@"delegate:%@ dataSource:%@", self.tableView.delegate, self.tableView.dataSource);
}发布于 2011-08-02 10:58:32
视图控制器可能尚未连接到outageTable anywhere的delegate属性。
https://stackoverflow.com/questions/6905897
复制相似问题