Прошло несколько месяцев, которые я запрограммировал для iOS, и хочу закончить игру новыми функциями. Теперь, когда люди играют в игру и проигрывают, они увидят представление «Игра поверх».Передача данных из Segue
Теперь я хочу, чтобы люди сначала увидели, где они могут использовать купленные кредиты, которые они получили, и вернуться к игре с помощью extra seconds or life
. Но я не делаю это правильно.
Way Я пытается сделать:
- Save Me View (Segue)
Game view -
- Game Over View (Segue)
Итак, вы проиграете, автоматически перейти к save me
зрения, жмется и перейти к game over
немедленно. В противном случае используйте NSUserDefaults, который был сохранен, прежде чем показывать вид Save Me
.
Так что я использую NSUserDefaults для сохранения предыдущих игровых уровней/очков и т. Д., И это неправильный способ сделать, и поток становится сложным.
Вторая попытка: Я пробовал, но я застрял на последнем шаге. Поскольку я использую Segue и делегатов, я не знаю, как сделать мой GameView делегатом SaveView, в то время как протоколы уже есть. Я следил за этим: Passing Data between View Controllers
Теперь, на шаге 6, Я работаю, потому что я использую modal segue с моими UIViewControllers и без UINavigationControllers. У меня это в моем коде atm:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([[segue identifier] isEqualToString:@"SaveMe"]){
SaveMeViewController *vc = [segue destinationViewController];
// Here needs to come that GameView (This Class) is the delegate for SaveMeViewController. Tried vc.delegate = self; but this doesn't work.
[self savePoints];
}
}
Спасибо, попробовал, но я застрял на последнем шаге. Поскольку я использую Segue и делегатов, я не знаю, как сделать мой GameView делегатом SaveView, в то время как протоколы уже существуют .. Я следил за этим: http://stackoverflow.com/questions/5210535/pass-data-between-view-controller Я отредактирую свой OP – Kets