У меня есть NSInteger в моем делете приложения под названием healthInt. В делегате приложения у меня установлено значение HealthInt равным 100. И когда приложение загружает первое представление, значение healthInt по-прежнему равно 100. Но когда он загружает следующее представление, для параметра HealthInt установлено значение 0. Даже если метка в этом контроллере представления (под названием healthLabel) показывает 100. причиной этого является проблема в том, что то, что я хочу сделать, этоИзменение значения NSInteger при загрузке вида
-(void)viewDidLoad{
if(appDelegate.healthInt <= 0){
healthLabel.text = @"Dead";
}
}
Но это не похоже на работу. И я знаю, что это плохая архитектура, но мне слишком поздно переделывать весь проект. Если вам нужно увидеть другой код, я с удовольствием покажу его вам :)
Держу пари, что 'appDelegate' - это нуль. Возможно, потому, что вы находитесь в другом экземпляре своего контроллера представлений от того, где вы первоначально установили 'appDelegate'. –
Но healthInt составляет 100 в каждом другом контроллере, кроме этого конкретного. –
Прочтите, что я сказал еще раз. Вы даже не получаете доступ к 'healthInt', потому что' appDelegate' равен нулю. Он не настроен - вы его где-то установили, и вы не установили его в этом контроллере. –