Маленькая UIButton поверх большего UIButton - PullRequest
0 голосов
/ 29 января 2012

У меня есть меньшее UIButton, которое находится поверх большего UIButton.

Проблема сейчас в том, что, если я коснусь меньшего UIButton, оно также вызовет большее UIButton.Код, который я использую, чтобы определить, были ли нажаты кнопки:

if(CGRectContainsPoint(button1.frame, location)) {
}

Есть ли свойство кнопок или какой-то автоматический способ сделать так, чтобы кнопка меньшего размера не влияла на кнопку большего размера?

Я знаю, что мог бы изменить приведенный выше код, чтобы сказать, находится ли он внутри кадра button1, а не внутри button2, но есть ли другой способ сделать это?

1 Ответ

0 голосов
/ 29 января 2012

UIControl (который является суперклассом UIButton) передает себя в качестве единственного параметра своей цели, используя селектор действий. Используйте это, это именно для этих случаев!

[smallButton addTarget:self action:@selector(doStuff:) forControlEvents:UIControlEventTouchUpInside];
[bigButton addTarget:self action:@selector(doStuff:) forControlEvents:UIControlEventTouchUpInside];

// ...

- (void) doStuff:(UIButton *)btn
{
    if (btn == smallButton)
    {
        // smaller button was clicked
    }
    else
    {
        // bigger button was clicked
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...