【问题标题】:UIView containing UIScrollView inside UITableViewCell's contentView在 UITableViewCell 的 contentView 中包含 UIScrollView 的 UIView
【发布时间】:2013-08-02 20:50:13
【问题描述】:

我创建了一个从 nib 加载的简单 UIView 子类,我将其作为子视图添加到自定义单元格的 contentView 中。视图被绘制和所有内容,但我不允许滚动子类视图中的滚动视图。

[self.noteContentView setScrollEnabled:YES];
[self.noteContentView setContentSize:CGSizeMake(100, 2000)];
[self.noteContentView setPagingEnabled:YES];

我还禁用了自动布局,只要它不在 tableview 单元格的内容视图中,它就可以工作..

我的猜测是 tableview 在我的滚动条之前“吞下”了触摸。我该如何解决这个问题?

【问题讨论】:

    标签: ios uitableview uiscrollview uikit


    【解决方案1】:
    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        UITableViewCell *cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cellId"] autorelease];
        UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)] autorelease];
        UIScrollView *scrollView = [[[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)] autorelease];
        scrollView.contentSize = CGSizeMake(2000, 100);
        [scrollView setPagingEnabled:YES];
    
        [cell addSubview:view];
        [view addSubview:scrollView];
    
        return cell;
    }
    

    这对我来说效果很好。

    这就是我初始化表格视图的方式

    self.viewController = [[[ViewController alloc] initWithStyle:UITableViewStyleGrouped] autorelease];
    

    尽量简化你的代码,直到你弄清楚你做错了什么。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多