Ответ 1
Вы можете проверить местоположение касания, чтобы увидеть, находится ли оно на слове "Click". Это может быть не совсем точным, хотя и может сломаться, если вы измените текст на своей этикетке.
Что вы можете сделать, так это сначала получить местоположение щелчка, используя:
CGPoint location = [gesture locationInView:gesture.view];
Это определяет расположение жестов в вашем представлении.
Как только вы это сделаете, вы можете иметь размер слова "Click" жестко запрограммированный или вы можете создать идентичную метку для своей метки жестов, чтобы получить размер, например:
UILabel *sizeLabel = //create label with same font.
[sizeLabel setText:@"Click"];
float width = [sizeLabel sizeThatFits:CGSizeMake(MAXFLOAT,MAXFLOAT)].width;
Вы также можете сделать это при создании фактической метки и сохранить эту ширину в статической переменной, чтобы вам нужно было сделать это один раз, и вам не нужно создавать дополнительную метку (т.е. установить текст вашей реальной метки на @ "Click", получить ширину, а затем установить ее в реальном тексте).
Как только у вас будет ширина, вы и местоположение крана, вы можете проверить, было ли использовано слово "Click", сравнивая:
if (location.x < width) {
//Put your tap code in here.
}