UIScrollView中的UITextView不可滚动

时间:2011-05-11 16:45:49

标签: iphone ipad uiscrollview scroll uitextview

我的UITextView中有一个UIScrollViewScrollview包含图像并水平滚动。 Textview被添加为子视图并包含一些文本。有时文本很长,所以我希望textview可以滚动。这是我的工作:

    UITextView *textView = [[UITextView alloc] initWithFrame:CGRectMake(260, 490, 280, 86)];
    [textView setBackgroundColor:[UIColor colorWithRed:63.0f/255.0f  green:154/255.0f blue:201/255.0f alpha:1.0f]];
    [textView setTextColor:[UIColor whiteColor]];
    [textView setFont:[UIFont fontWithName:@"Helvetica" size:14.0]];
    [textView setScrollEnabled:YES];
    [textView setUserInteractionEnabled:YES];
    [textView setContentSize:CGSizeMake(280, 400)];

问题是,我无法滚动。

滚动视图可以吃掉我的触摸吗?什么是干净的解决方案?

2 个答案:

答案 0 :(得分:1)

UIScrollViews有一个名为delaysContentTouches的bolean属性。默认情况下,它设置为YES - 它告诉滚动视图延迟将触摸事件传递给其子视图。

这就是目前您的文本视图不滚动的原因。如果您将delaysContentTouches设置为NO,则希望您的文字视图现在正常运行。

答案 1 :(得分:0)

我将仅限水平的UISCrollView放在仅垂直的UIScrollView中。这很好。但是如果父级和子级UISCrollView都支持向同一方向滚动,我可以看出这是一个问题。您可能需要对UIScrollView进行子类化并覆盖触摸事件并适当地调度它们(根据您想要发生的事情,触摸的位置等对父母或孩子进行调度)