Я только начал кодировать, так что просто просто не знаю большинства вещей. Я хочу сделать простую игру. Я объясню коротко: когда пользователь нажал кнопку «Нажмите, чтобы начать», вы увидите 7 из 52 карт в колоде карт. Я сделал это, создав несколько кнопок, которые содержат изображение задней стороны карты. Поэтому, когда пользователь нажимает кнопку, откроется 7 карт со случайной картой.Прикрепление значения к массиву не невозможно, как добавить значение к кнопке/массиву/изображению?
Во-первых, я создал массив, чтобы добавить все мои имена фото к контроллеру представления, как это:
var MasterAllCards = ["2_of_clubs", "2_of_spades", "2_of_diamonds", "2_of_hearts", "3_of_clubs", "3_of_spades", "3_of_diamonds", "3_of_hearts", "4_of_clubs", "4_of_spades", "4_of_diamonds", "4_of_hearts", "5_of_clubs", "5_of_spades", "5_of_diamonds", "5_of_hearts", "6_of_clubs", "6_of_spades", "6_of_diamonds", "6_of_hearts", "7_of_clubs", "7_of_spades","7_of_diamonds","7_of_hearts", "8_of_clubs", "8_of_spades", "8_of_diamonds", "8_of_hearts", "9_of_clubs", "9_of_spades", "9_of_diamonds", "9_of_hearts", "10_of_clubs", "10_of_spades", "10_of_diamonds", "10_of_hearts", "jack_of_clubs", "jack_of_spades", "jack_of_diamonds", "jack_of_hearts", "queen_of_clubs", "queen_of_spades", "queen_of_diamonds", "queen_of_hearts", "king_of_clubs", "king_of_spades", "king_of_diamonds", "king_of_hearts", "ace_of_clubs", "ace_of_spades", "ace_of_diamonds", "ace_of_hearts"]
Чем я создал выход IBAction на мой взгляд контроллера, с моей мыши кнопку, чтобы начать как а затем:
@IBAction func testt(sender: UIButton) {
TheGoButton.enabled = false
TheGoButton.hidden = true
SlotCard1.setImage(UIImage(named: randomcardpicker("Cardslot1")), forState: UIControlState.Normal)
Playablecard1.setImage(UIImage(named: randomcardpicker("Playablecard1")), forState: UIControlState.Normal)
Playablecard2.setImage(UIImage(named: randomcardpicker("Playablecard2")), forState: UIControlState.Normal)
Playablecard3.setImage(UIImage(named: randomcardpicker("Playablecard3")), forState: UIControlState.Normal)
Playablecard4.setImage(UIImage(named: randomcardpicker("Playablecard4")), forState: UIControlState.Normal)
Playablecard5.setImage(UIImage(named: randomcardpicker("Playablecard5")), forState: UIControlState.Normal)
Playablecard6.setImage(UIImage(named: randomcardpicker("Playablecard6")), forState: UIControlState.Normal)
Playablecard7.setImage(UIImage(named: randomcardpicker("Playablecard7")), forState: UIControlState.Normal)
//sender.setImage(UIImage(named: randomcardpicker("Cardslot1")), forState: UIControlState.Normal)
}
Моя функция "randomcardpicker" нижеследовал:
func randomcardpicker (WhatCarduPlay: String) -> String {
let randomIndex = Int(arc4random_uniform(UInt32(MasterAllCards.count)))
let RandomCard = AllCards[randomIndex]
let RandomValueOfTheCard = AllValues[randomIndex]
MasterAllCards.removeAtIndex(randomIndex)
AllValues.removeAtIndex(randomIndex)
StoreHereAllValues.append(RandomValueOfTheCard)
StoreHereAllCards.append(RandomCard)
return RandomCard
}
Как вы можете видеть, я добавил много случайных вещей, потому что не могу понять, как добавить значение добавления в массив, например Int. Теперь кнопка изменится на изображение правильно, но эта кнопка/изображение должна удерживать значение, которое я могу использовать позже, чтобы сравнить 2 значения. Я кое-что прочитал об Enums, но я не мог понять, будет ли это работать на моем коде.
Итак, мой вопрос: как добавить значение к этой кнопке, чтобы я мог использовать это, чтобы сравнить его с другими кнопками в будущем?
Поскольку я пишу это, мне было интересно, чтобы значение изображения было названием этой кнопки, поэтому я могу легко прочитать значение. Поправьте меня, если я ошибаюсь!
Ой, теперь я вижу, что я вообще не объяснил игру ... Игра, которую я хочу воссоздать, - это Волшебные башни. Просто для удовольствия :) – NoKey
Существует много способов сделать это. Простейшим может быть установка свойства «tag» каждой из кнопок. Вы также можете хранить ссылки на кнопки в массиве в известном порядке. Вы можете подклассифицировать UIButton для сохранения некоторого дополнительного состояния. –
Прохладный приятель, не знал о тегах. Теперь моя проблема решена :). – NoKey