Có lẽ bạn đang làm một cái gì đó không bình thường, giống như bạn chỉ muốn chạm được phát hiện trong một hình tam giác hoặc một cái gì đó . Nếu vậy, bạn có thể bỏ qua điều này. Nhưng vì bạn mới sử dụng iOS, tôi khuyên bạn nên sử dụng lớp con UIControl
với các cặp hành động mục tiêu hoặc UIGestureRecognizer
.
Ví dụ mã sẽ là:
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button addTarget:self action:@selector(buttonPressed:) forControlEvents:UIControlEventTouchUpInside];
Sau đó trong target
- có lẽ điều khiển tầm nhìn của bạn, bạn sẽ thực hiện phương pháp này:
- (void)buttonPressed:(id)sender
{
}
Với một trình nhận dạng cử chỉ, bạn sẽ thêm các cử chỉ công cụ nhận dạng cho một số UIView
và, giống như với số UIControl
, hãy thêm cặp mục tiêu-hành động:
UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(viewTapped:)];
[self.view addGestureRecognizer:tapRecognizer];
- (void)viewTapped:(UIGestureRecognizer *)recognizer
{
}
Đây là những cách tiếp cận điển hình cho tương tác người dùng cơ bản. Bạn sẽ có nhiều thời gian đơn giản hơn với việc sử dụng touchesBegan
& công ty, mặc dù nếu đó là những gì bạn cần thì những người trả lời khác bạn đã đề cập đến.
Cảm ơn. Điều đó có vẻ chính xác những gì tôi đang tìm kiếm. Tôi không thể tìm thấy giải pháp này cho cuộc sống của tôi. – user1941895
tốt, điều này đang sử dụng Core C API đồ họa, do đó, nó không phải ở cấp độ của Obj-C hoặc C++ ... Vì vậy, nó sẽ không xuất hiện trong tài liệu lớp Obj-C. – nielsbot