IOS:触摸Imageview时的事件

Cra*_*Dev 5 xcode uiimageview ios

我有一个带有png的ImageView,我想这样做:当有人触摸这个imageview时,它的alpha变为0.0,是否可能?(全部没有按钮)

Tek*_*Yin 15

你可以使用UITapGestureRecognizer添加到UIImageView通道addGestureRecognizer

片段:

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(imageTaped:)];
singleTap.numberOfTapsRequired = 1;
singleTap.numberOfTouchesRequired = 1;
[iv addGestureRecognizer:singleTap];
[iv setUserInteractionEnabled:YES];
Run Code Online (Sandbox Code Playgroud)

- (void)imageTaped:(UIGestureRecognizer *)gestureRecognizer {
    [UIView animateWithDuration:0.5 animations:^(void){
         imageView.alpha = 0.0f;
    }];
}
Run Code Online (Sandbox Code Playgroud)


Vla*_*mir 6

对的,这是可能的.例如,您可以通过以下步骤执行此操作:

  1. 将图像视图的userInteractionEnabled属性设置为YES - 因此它将接收触摸事件
  2. 添加UITapGestureRecongnizer到它
  3. 在手势处理程序中将视图的alpha设置为0.0,您也可以使用动画执行此操作:

    [UIView animateWithDuration:0.5 animations:^(void){
            imageView.alpha = 0.0f;
        }];
    
    Run Code Online (Sandbox Code Playgroud)