У меня странное поведение с NSButton
. Он работает нормально, пока я не сделаю это вуду где-то еще в своем приложении. Сразу после этого кнопка больше не реагирует на события щелчка. Он по-прежнему выглядит нормально (поэтому не отключен). Он просто ничего не делает, когда я нажимаю на него. Любая идея, где я должен посмотреть в свойствах NSButton
, которые могли быть изменены случайно? (Совершенно уверен, что не трогал саму кнопку.)
Кнопка не реагирует
Ответы (3)
Убедитесь, что ваша кнопка находится в «осязаемой» зоне в ее superView. Я имею в виду, что он может быть помещен внутри его границ superView (если нет, вы можете видеть его, в зависимости от свойств отсечения, и вы не можете с ним взаимодействовать). Чтобы проверить это, установите цвет для представления контейнера. Также проверьте, что userInteraction включен...
Надеюсь, поможет.
userInteraction
? Это не свойство NSButton
- person qwerty_so; 15.04.2015
Если ваша кнопка просто не дает анимации, это может быть ошибка Xcode. У меня была похожая проблема раньше, и я зарегистрировал ошибку, и она была исправлена в следующей версии Xcode. Проверьте мой вопрос SO. Элемент кнопки панели инструментов не работает должным образом в SplitViewController
Если вам действительно нужно дать ему анимацию, вы, вероятно, могли бы сделать это в коде с чем-то вроде этого. Обратите внимание, что это не тестировалось, поэтому оно может не работать, или вам может потребоваться некоторое исправление, но вы поняли идею :)
- (IBAction)buttonAction:(id)sender {
self.button.titleLabel.textColor = [UIColor lightGrayColor];
// Action
self.button.titleLabel.textColor = [UIColor darkTextColor];
// Or with delay
[self performSelector:@selector(changeButtonColor) withObject:nil afterDelay:0.1];
}
Я понял. Кнопка открыла временное всплывающее окно. Чтобы закрыть это всплывающее окно из-за действия, которое я закодировал
view.window!.orderOut(self)
После его замены на
view.window!.performClose(self)
странный эффект пропал. Я не уверен, но это похоже на ошибку в среде выполнения Swift. Я отчитаюсь и посмотрю, что выйдет.
voodoo
, о котором вы говорите, можете ли вы показать код, который ломает кнопку? - person Wez   schedule 15.04.2015