【问题标题】:how can enable and disable the user-interaction option of uiview in a button click如何在按钮单击中启用和禁用 uiview 的用户交互选项
【发布时间】:2012-02-24 06:32:41
【问题描述】:

我正在尝试使用手势识别器实现Ipad 应用程序。在我的应用程序中有一些小的UIView,每个UIView 都有一个子视图(UIButton)。我的需要是,如果单击一个按钮,该按钮的用户交互选项的super view 将变为YES,其他视图userinteraction 选项将变为NO。实现后,超级视图统治子视图(即如果一个视图的用户交互选项变为NO,这将影响子视图)。如何避免上述问题?

【问题讨论】:

    标签: objective-c uiview xcode4 uibutton user-interaction


    【解决方案1】:

    好吧,假设您在故事板或 xib 文件中设置了预定义数量的视图和子视图,您可以为每个视图添加一个属性。然后使用手势识别器来确定用户是否点击了视图。如果他们这样做了,您可以使用您设置的属性将相应的启用视图的属性设置为 YES 或 NO。

    例如,添加一个 IBAction 来检测您的手势识别器,该识别器执行类似于以下操作:

    - (IBAction)tap:(UITapGestureRecognizer *)gesture
    {
        CGPoint tapLocation = [gesture locationInView:self.aViewWhereYouMonitorGestures];
        for (UIView *view in self.aViewWhereYouMonitorGestures.subviews) {
            if (CGRectContainsPoint(view.frame, tapLocation)) {
                self.someView.enabled = YES; // or NO depending on what you want to do.
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-23
      • 2016-08-29
      • 1970-01-01
      • 2017-07-12
      • 1970-01-01
      • 2017-01-03
      • 1970-01-01
      • 2016-05-31
      相关资源
      最近更新 更多