I'm trying to make a UIImageView accept actions and fire them everytime it clicked on the UIImageVie, but i'm having hard time in getting it to work, please help me out
but here is what i'm doing:
[View setUserInteractionEnabled:YES]; [View addTarget:self action:@selector(myAction:) forControlEvents:UIControlEventTouchUpInside]; - (void) myAction:(id)sender { NSLog(@"It works!"); }
UIImage contains the data for an image. UIImageView is a custom view meant to display the UIImage .
Overview. Image views let you efficiently draw any image that can be specified using a UIImage object. For example, you can use the UIImageView class to display the contents of many standard image files, such as JPEG and PNG files.
Objective-C
In your viewDidLoad:
method write this:
-(void)viewDidLoad { UIImageView *imageview = [[UIImageView alloc]initWithFrame:CGRectMake(100.0, 100.0, 100.0, 100.0)]; [imageview setImage:[UIImage imageNamed:@"image.png"]]; [imageview setUserInteractionEnabled:YES]; UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapping:)]; [singleTap setNumberOfTapsRequired:1]; [imageview addGestureRecognizer:singleTap]; [self.view addSubview:imageview]; }
Then call your gesture method like this:
-(void)singleTapping:(UIGestureRecognizer *)recognizer { NSLog(@"image clicked"); }
Swift
override func viewDidLoad() { super.viewDidLoad() let imageView: UIImageView = UIImageView(frame: CGRect(x: 100.0, y: 100.0, width: 100.0, height: 100.0)) imageView.image = UIImage(named: "image.png") imageView.isUserInteractionEnabled = true let singleTap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(self.singleTapping(recognizer:))) singleTap.numberOfTapsRequired = 1 imageView.addGestureRecognizer(singleTap) self.view.addSubview(imageView) } @objc func singleTapping(recognizer: UIGestureRecognizer) { print("image clicked") }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With