У меня есть 3 кнопки, которые предоставляются пользователю для выбора категории, которую они хотят видеть.Быстрое UIControlState.Selected остается выбранным?
Они определяются как ниже:
//outlets
@IBOutlet weak var ChineseButton: UIButton!
@IBOutlet weak var IndianButton: UIButton!
@IBOutlet weak var MexicanButton: UIButton!
У меня есть ниже действия на эти кнопки (изменение кнопки оригинального изображения на неактивна версии):
// действия
@IBAction func ChineseButtonPressed(sender: UIButton)
{
ChineseButton.setImage(UIImage(named: "chinese.png"), forState: UIControlState.Normal)
ChineseButton.setImage(UIImage(named: "chinese.png"), forState: UIControlState.Selected)
IndianButton.setImage(UIImage(named: "grey-indian.png"), forState: UIControlState.Normal)
MexicanButton.setImage(UIImage(named: "grey-mexican.png"), forState: UIControlState.Normal)
}
@IBAction func EightFacedButtonPressed(sender: UIButton) {
IndianButton.setImage(UIImage(named: "indian.png"), forState: UIControlState.Normal)
IndianButton.setImage(UIImage(named: "indian.png"), forState: UIControlState.Selected)
ChineseButton.setImage(UIImage(named: "grey-chinese.png"), forState: UIControlState.Normal)
MexicanButton.setImage(UIImage(named: "grey-mexican.png"), forState: UIControlState.Normal)
}
@IBAction func TweleveFacedButtonPressed(sender: UIButton) {
MexicanButton.setImage(UIImage(named: "mexican.png"), forState: UIControlState.Normal)
MexicanButton.setImage(UIImage(named: "mexican.png"), forState: UIControlState.Selected)
ChineseButton.setImage(UIImage(named: "grey-chinese.png"), forState: UIControlState.Normal)
IndianButton.setImage(UIImage(named: "grey-indian.png"), forState: UIControlState.Normal)
}
Эта функция действия также определяет UIControlState, у меня есть еще одна кнопка, которая после щелчка приведет вас к другой странице, но вам нужно понять, какая кнопка была выбрана.
Я пробовал нижеследующее, но, похоже, он не распознал, какая кнопка была выбрана?
@IBAction func GenerateButton(sender: UIButton) {
if ChineseButton.selected == true{
println("Chinese button was selected")
}
Я новый, чтобы быстро, поэтому любая помощь будет оценена!
Спасибо :)
Hi! Спасибо за вашу помощь. Я обновил свой код выше, но теперь он показывает только 1 кнопку, поэтому я думаю, что я где-то ошибся. Am я заменить содержимое из всех моих функций действий с: «// Удалить все кнопки, но прессованные один для кнопки в [ChineseButton, IndianButton, MexicanButton] { button.selected = отправителя === Кнопка }» ? –
Все ваши кнопки могут вызывать одно и то же действие, не нужно настраивать действие для каждой кнопки, если все они делают то же самое. Может быть, вы заменили метод 'viewDidLoad'? Вы должны добавить строки, а не заменять то, что у вас было. – redent84
Спасибо, что у меня есть это для работы сейчас. Единственная проблема, с которой я сейчас сталкиваюсь, заключается в том, что пользователь хочет перейти с китайского на индийский, это не позволит, так как китайская кнопка уже выбрана. –