首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >UITableView -无法选择单元格,单元格重叠

UITableView -无法选择单元格,单元格重叠
EN

Stack Overflow用户
提问于 2014-10-22 21:47:29
回答 2查看 766关注 0票数 0

非常琐碎的表视图:

代码语言:javascript
运行
复制
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 2;
}

- (float)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return 44;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"SettingsCell"];
    UILabel *label = (UILabel *)[cell viewWithTag:1];

    switch (indexPath.row) {
        case 0:
        {
            label.text = @"One";
            break;
        }
        case 1:
        {
            label.text = @"Two";
            break;
        }
        default:
            break;
    }

    return cell;
}

当我点击一个单元格时,didSelectRowAtIndexPath不会被调用。

此外,单元格重叠:

这里会发生什么事?我可以滚动表格,但不能选择单元格。有一次,这件事起了作用,我搞不懂到底是怎么回事。

我使用的是一个原型单元格,在故事板中,选择被设置为“单一选择”。所有视图都有userInteractionEnabled = YES。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-22 22:25:09

这就是解决办法:

代码语言:javascript
运行
复制
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return 44;
}

将返回类型从“浮动”更改为"CGFloat“。Xcode 6.1甚至没有将此标记为警告。

票数 0
EN

Stack Overflow用户

发布于 2014-10-22 22:05:43

在这里,你似乎反复提到第一个单元:

UILabel *label = (UILabel *)[cell viewWithTag:1];

这可能是文字被覆盖的原因。

试一试如下:

代码语言:javascript
运行
复制
if(indexPath.row == 1)
{
    cell.textLabel.text = @"One";
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26517707

复制
相关文章

相似问题

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