【问题标题】:bringSubViewToFront not working as expectedBringSubViewToFront 没有按预期工作
【发布时间】:2013-02-12 13:15:17
【问题描述】:

我有一组视图,它们基本上定义了 5x5 网格上的颜色方块。每个视图负责自己的触摸事件,并在触摸时执行动画。

这一切都很好,但有时动画会被视图的邻居剪辑。我尝试使用以下代码解决此问题,但有时仍会出现剪辑;它似乎是随机发生的。我有什么遗漏吗?

- (void)handleTap:(UITapGestureRecognizer *)recognizer {
    [recognizer.view.superview bringSubviewToFront:recognizer.view];
    [recognizer.view setNeedsDisplay];

    //do animation to the view here
}

【问题讨论】:

  • 您从哪里获得了识别器对象以及您是如何将识别器直接添加到该视图的?
  • 顺便说一句,我认为在这种情况下您不需要setNeedsDisplay,因为将子视图置于前面可能会自动执行此操作。
  • 识别器来自我订阅的handleTap事件..我会更新代码
  • @mrueg 我最初没有这个,经过一些搜索后我添加它希望它会有所帮助,它显然没有,我应该从代码中删除。谢谢
  • 将 clipsToBounds 设置为 NO ?,动画在做什么?它实际上是在子视图的框架内发生的吗?

标签: iphone objective-c uikit


【解决方案1】:

把它当做,

[self.View bringSubviewToFront:recognizer.view];
[recognizer.view setNeedsDisplay];

【讨论】:

  • 谢谢,但尚未修复:'/
猜你喜欢
  • 2021-10-19
  • 2020-03-18
  • 2012-06-14
  • 2014-11-15
  • 1970-01-01
  • 2012-07-02
  • 2011-09-07
  • 2013-03-03
  • 2015-05-18
相关资源
最近更新 更多