0

我有一个按钮,它将成为添加到另一个 UIView 的子视图,就像 Path 一样。这个想法是这个按钮将在屏幕的一个角落保持静止,而用户可以滚动它后面的 UIVIew。我正在处理 pointinside 方法,以了解用户何时单击它是在按钮上还是在超级视图上。

 - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
 {
     return CGRectContainsPoint(customButton.frame, point);
 }

我的问题是,如果用户确实点击了按钮,我需要打开一个 UIImagePickerController,它是 superview 的一个属性。我怎么能在superview上做到这一点?

谢谢。

4

2 回答 2

0

您应该通过 addTarget 方法向按钮添加事件。

于 2012-12-19T18:42:55.010 回答
0

如果按钮被保证(我的意思是,因为它会在没有保证的情况下崩溃)成为您提到的超级视图的子视图,那么强制转换self.superview将允许您访问它的UIImagePickerController属性。更安全的实现将使用对拥有的超级视图的弱引用,然后如果您尝试在没有超级视图的情况下重新使用按钮,则属性操作将优雅地失败。

于 2012-12-19T18:44:36.033 回答