Показать супер.просмотр — iPhone

#iphone

#iPhone

Вопрос:

Я создал ViewControllers ABC и XYZ. XYZ наследует от ABC. В AppDelegate я добавляю XYZ.view в качестве подвида.

Теперь одним нажатием кнопки в XYZ я хочу отобразить ABC.view на небольшой части экрана. Я пробовал некоторые комбинации из следующих, но ничего не работает.

  1. [self.view выводит subviewtofront:super.view];
  2. [AppDelegate.window выводит subviewtofront:super.view];
  3. [self.view добавляет subview:super.view];
  4. [AppDelegate.window вставляет subview:self.view по индексу:0];
  5. [AppDelegate.window вставляет subview:super.view над subview:self.view];
  6. [super.view setNeedsDisplayInRect:CGRectMake(0, 0, 320, 320)];

Ответ №1:

Super — это ключевое слово, которое используется только для вызова реализации определенного метода суперкласса. Это не относится к фактическому экземпляру класса. Если вы хотите создать и отобразить viewcontroller, вам нужно выделить и инициализировать его экземпляр, а затем представить его так же, как вы это сделали с помощью XYZ.

Комментарии:

1. Исходя из вашего предложения добавить ABC в качестве подвида XYZ, тогда каков будет наилучший подход для передачи данных из ABC в XYZ. Я знаю несколько способов, но не знаю, какой из них хороший!

2. На самом деле это отдельный вопрос, но просто используйте свойства. Если вы пытаетесь сделать что-то сложное, отправьте новый вопрос (после того, как вы провели некоторое исследование :))