0

UIButton 有一个很酷的属性,叫做“Shows Touch On Highlight”,它允许我告诉用户“你触摸了这个按钮”。

有什么方法可以为 UIImage 实现这个吗?我希望用户看到 UIImage 中触摸的点。

4

2 回答 2

0

如果你使用一个小技巧。在 UIImageView 上方制作一个透明按钮。所以必须设置一个 UIImageView userInteractionEnabled true bec default false。如下:

imageView.userInteractionEnabled = YES;
UIButton *clearButton = [UIButton buttonWithType:UIButtonTypeCustom];
clearButton.frame = imageView.frame;
clearButton.showsTouchWhenHighlighted = YES;
[clearButton setBackgroundColor:[UIColor clearColor]];
[imageView addSubView:clearButton];

其他技巧,创建一个透明按钮,并设置您想要的图像。

UIButton *clearButton = [UIButton buttonWithType:UIButtonTypeCustom];
clearButton.frame = CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>);
clearButton.showsTouchWhenHighlighted = YES;
[clearButton setImage:[UIImage imageNamed:@"your_image"] forState:UIControlStateNormal];
[clearButton setBackgroundColor:[UIColor clearColor]];
于 2013-02-28T07:48:07.723 回答
0

不,它与 in 中的方式不同UIButton,但您可以使用UIButton自定义类型,而不是为您解决它。

UIImageView 的另一个帮助是设置它的突出显示图像,但您仍然必须为效果工作。

于 2013-02-28T08:29:07.847 回答