Я хочу напечатать NSString в своем TextView в mainViewController. Но эта команда должна поступать из второго ViewController. Я объявил строку в моем mainViewController.h, но мне нужна эта строка в secondViewController.m! (Текст должен быть напечатан в mainViewController). Когда я хочу получить доступ к этой строке, он говорит, что Xcode не знает эту переменную. Как я могу создать строку/переменную, которую я могу редактировать и печатать со всех моих ViewControllers (xib!)?Редактирование NSString многими контроллерами View?
ответ
Похоже, вы хотите поделиться моделью между двумя контроллерами. Это правильный подход MVC, так что все, что требуется, - это то, что один из контроллеров представления изменит значение в модели, и все остальные контроллеры будут уведомлены и могут обновить их соответствующие виды:
Пожалуйста, смотрите this excellent article о том, как это должно быть реализовано.
просто объявить, что переменная NSString в AppDelegate & доступа в любом ViewController с помощью метода sharedApplication .in вашего случая присвоить ей значение в secondViewController & доступа, что значение в mainViewController
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
NSLOg(@"Nsstring value=%@",appDelegate.stringVariable);
присваивая значение: [email protected]"fromSecondViewController");
не работает или я глуп:/ , когда я беру это в моем AppDelegate я получаю эту ошибку: первую строку кода: (ERROR) Initializer элемент не является константой во время компиляции вторая строка кода: (ВНИМАНИЕ!) спецификатор типа отсутствует, по умолчанию «межд» (WARNING) несовместимой переопределение функции библиотеки «NSLog» (ОШИБКА) Ожидаемый объявитель параметра (ERROR) Ожидаемый ')' –
- 1. Segues между контроллерами View
- 2. Передача данных между контроллерами View - Storyboards segues
- 3. Изменить представление UIImage между двумя контроллерами View
- 4. Пропустить массив между контроллерами View
- 5. Create View С одним-многими
- 6. Использование контроллера View, управляющего двумя другими контроллерами View
- 7. Передача данных между контроллерами View с NSNotificationCenter
- 8. Контроллер Pushing View с двумя контроллерами Nav
- 9. Передача данных между контроллерами View (Swift)
- 10. Редактирование Joomla Category blog view
- 11. MVC3 Редактирование в Index View
- 12. редактирование NSString при появлении определенного символа
- 13. Редактирование Devise from Users # show view
- 14. Редактирование данных в списке View item
- 15. IOS Xcode: Редактирование Root View Controller
- 16. Редактирование текста кнопки в JavaFX со многими потоками
- 17. View View View View View View View
- 18. Сохранять переменные между контроллерами View с помощью segue
- 19. Передача данных между контроллерами View без использования prepareforsegue
- 20. Передача данных между контроллерами View с использованием segues. Не работает
- 21. Swift Generics - Изменение значений и переход между контроллерами View
- 22. Передача кнопок между контроллерами View в Xcode 5
- 23. Совместное использование UIImageView между контроллерами View в TabBar
- 24. Передача переменных между контроллерами View с использованием segue
- 25. Использование onsen ui split-view с несколькими контроллерами
- 26. Передача NS Core Data context ref между контроллерами View
- 27. Зачем передавать данные между контроллерами View с помощью segue
- 28. Подключение объектов с двумя контроллерами View в Swift
- 29. Данные, передаваемые между двумя контроллерами View Swift IOS
- 30. iOS и Swift: код обмена между контроллерами View
Как сделать переменную public static? Таким образом, никакой экземпляр не требуется от mainViewController? – Jeff
как я могу это сделать? –
Я бы не знал; Obj-C вышел из моей зоны комфорта. Тем не менее, быстрый Google дал мне что-то вроде '' extern' или static' – Jeff