首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未调用didSelectRowAtIndexPath

未调用didSelectRowAtIndexPath
EN

Stack Overflow用户
提问于 2011-08-02 08:04:25
回答 4查看 9.2K关注 0票数 3

我在UIViewController中有一个UITableView,如下所示:

.h

代码语言:javascript
复制
@interface OutageListViewController : UIViewController<UITableViewDelegate,UITableViewDataSource> {
   IBOutlet UITableView *outageTable;

.m

代码语言:javascript
复制
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
   NSLog(@"Selected");
}

我已经定制了表格单元:

//编辑我的自定义视图上有一个并排的fire UILabel,以及一个遍布整个区域的背景。但是,在调整/删除了我放在自定义单元格上的背景图像和标签之后,"didSelectRowAtIndexPath“仍然没有被调用。//结束编辑

代码语言:javascript
复制
@interface AbstractSummaryListViewCell : UITableViewCell {...}

代码语言:javascript
复制
@interface FiveColumnSummaryCell : AbstractSummaryListViewCell {...}

此UIView位于另一个UIView中:

代码语言:javascript
复制
@interface CustomTabBarController : UIViewController {
   OutageListViewController *outageListViewController;

和我的AppDelegate将这个添加到窗口中:

代码语言:javascript
复制
[window addSubview:[customTabBarController view]];

现在,我正在尝试确定哪个单元格被单击,而didSelectRowAtIndexPath没有被调用,我让dataSource和委托从UITableView连接到文件的所有者,实际上,数据按照我的"cellForRowAtIndexPath“指定的方式正确填充,有什么想法可以解决这个问题吗?

谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-08-03 00:44:14

我解决了这个问题:忘记在我的自定义单元xib中选中启用用户交互的。真是个笨蛋!

票数 4
EN

Stack Overflow用户

发布于 2011-08-02 10:03:53

以下是UITableView all YES的属性

  • allowsSelection
  • allowsSelectionDuringEditing

Edit:我认为Paul是对的。delegate属性有一些问题。您可以在-(空)viewDidLoad中检查tableView的委托属性。如您所说,它们应该连接到xib中的FileOwner。所以下面的代码不会得到nil。

代码语言:javascript
复制
- (void)viewDidLoad {
   [super viewDidLoad];

   // They should not be nil.
   NSLog(@"delegate:%@ dataSource:%@", self.tableView.delegate, self.tableView.dataSource);
}
票数 3
EN

Stack Overflow用户

发布于 2011-08-02 10:58:32

视图控制器可能尚未连接到outageTable anywhere的delegate属性。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6905897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档