как развернуть представление таблицы с помощью coredata без fetchresultscontroller - PullRequest
0 голосов
/ 22 января 2012

У меня есть представление таблицы на первом экране. Я нажимаю на кнопку «Добавить» и затем добавляю туда детали (имя, фамилия и возраст) и сохраняю. Его сохраненный n возвращает меня к родительскому экрану, когда я нажимаю на индикатор аксессуара, я хочу перейти в тот же вид и увидеть детали выбранной строки в этих текстовых полях. Я использую segue, передавая объект, объект передается, но я не вижу его в текстовых полях, я получаю экран с пустыми textfields.thanks, показывающий код ниже:

-(void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
   {

     if([segue.identifier isEqualToString:@"AddNew"])


    {
          addNewController = segue.destinationViewController;

           addNewController.delegate = self;

}
else if ([segue.identifier isEqualToString:@"ShowRow"])
{
    NSIndexPath *pathChosen = self.tableView.indexPathForSelectedRow;


    personObject = [self.personArray objectAtIndex:pathChosen.row];
    NSLog(@"the row selected is %@",personObject);


    self.addNewController = segue.destinationViewController;
    self.addNewController.personObject = self.personObject;
     self.addNewController.personObject = self.personObject;

    self.personObject.firstName = addNewController.firstNametxt.text;
    NSLog(@"the row selected is %@",addNewController.firstNametxt.text);
   //its giving me a null value here for addnewcontroller.firstNametxt.text.




}

}

1 Ответ

1 голос
/ 22 января 2012

Тебе действительно нужно очистить свой код, чувак. Есть дублированные строки, расположенные чуть ниже другого. Вам придется работать с большей точностью и концентрацией, если вы хотите успешно писать код, не сходя с ума.

Ваше заявление о назначении должно быть наоборот. Тривиальная ошибка, которую, я уверен, ты мог поймать сам.

addNewController.firstNametxt.text = self.personObject.firstName;

Кстати, если это не работает, это потому, что, возможно, ваш addNewController еще не создал свои текстовые поля. Лучше заняться заполнением текстовых полей в самом контроллере, лучше всего в методе viewDidLoad. Для этого будет доступна personObject, которую вы определили как свойство.

...