【问题标题】:UIViewController and UIScrollViewUIViewController 和 UIScrollView
【发布时间】:2011-05-01 19:19:53
【问题描述】:

我有一个自定义的UIViewController 类,它的视图(连接到 IB)是一个UIScrollView。我想知道UIScrollView 什么时候得到“内部修饰”。

我覆盖了

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

方法,但它没有被调用。我做错了什么?

【问题讨论】:

  • - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { NSLog(@"hi"); }

标签: objective-c cocoa-touch uiview uiviewcontroller uiscrollview


【解决方案1】:

您是否覆盖了UIViewControllerUIScrollView 中的touchesBegan::?如果您在UIViewController 上执行此操作,则它需要在UIScrollView(或它包含的任何内容)中。

UIScrollView 在“冒泡”到您的UIViewController 之前拦截了触摸事件。

【讨论】:

    【解决方案2】:

    就像 ryan 所说,您需要在 UIScrollView 中覆盖您的 touchesBegan:: 方法。您可能需要为此创建一个自定义滚动视图,并将您使用的滚动视图(在 IB 中)设置为该类。另外,请务必将 scrollView 委托设置为您的视图控制器。这样,当触摸被拦截时,它知道将它们发送到哪里

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 2017-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多