我是Iphone开发领域的新手。我的tableView出现了一个非常奇怪的问题,我已经制作了许多包含不同数据的tableView,但它从未发生过。
我的数据显示在tableView上,但没有被点击。我也删除了那个控制器并创建了另一个,但它也不能在那里工作。虽然当我创建另一个项目并使tableView工作正常。任何人,如果你能提供帮助,请提前谢谢。
到目前为止,我已经尝试在我的
中控制一个字符串-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{}
要检查,但它没有控制任何东西。
这是我的方法cellForRowAtIndexPath
的代码- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"SimpleTableItem";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
cell.textLabel.text = [tableData objectAtIndex:indexPath.row];
cell.imageView.image = [UIImage imageNamed:[thumbnails objectAtIndex:indexPath.row]];
return cell;
}
我使用断点并且知道它甚至没有进入didSelect方法..可能是委托没有被调用。但为什么 ?因为我在(.h)文件中声明了它@interface simpleDataViewController:UIViewController以及(.m)文件_table.delegate = self; _table.dataSource = self;
答案 0 :(得分:2)
确保已将委托设置为该tableView,如果不在
下面[yourTableView setDelegate:self];
答案 1 :(得分:0)
我希望UITableView已禁用互动。
在 ViewDidLoad
添加此内容 self.tableView.userInteractionEnabled = YES;
答案 2 :(得分:0)
当你使用uitableview时,有一些基本的东西需要注意,
使用协议UITableViewDelegate
和UITableViewDataSource
。
之后使用@property(nonatomic,retain) UITableView *Mytableview;
可能会在@synthesize
的时间内造成一些问题,因此请通过编写
@synthesize Mytableview = _Mytableview;
之后设置委托和数据源
[_Mytableview setdelegate:self];
[_Mytableview setDatasorce:self];
..检查一下是否有效
答案 3 :(得分:0)
您必须通过代码或属性检查器设置cellSelectionStyle。
[cell setSelectionStyle:UITableViewCellSelectionStyleNone];
只要您不确定单元格选择样式,单元格就不会显示任何单击外观,但是单击会发生并且didSelectRowAtIndexPath
将被调用。因此,如果您感觉未单击单元格,则通过外观将<{1}}设置为单元格,如
selectionStyle