2016-04-23 2 views
-1

Я ищу данные для передачи с одного контроллера просмотра на следующий БЕЗ перехода к следующему контроллеру представления. Я не знаю, возможно ли это, но если кто-то из вас знает, как здорово. Чтобы быть более ясным, мне нужно передать переменную с одного экрана на другой, но STAY на первом экране все время, в то время как следующий экран получает данные.Передача данных БЕЗ навигации (Swift)

Благодаря

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

+0

Возможный дубликат [Передача данных между контрольными контроллерами] (http://stackoverflow.com/questions/5210535/passing-data-between-view-controllers) – JAL

+0

Я считаю, что во время навигации. В любом случае, чтобы избежать навигации между экранами, но все же передать данные? @JAL –

+0

Вы говорите мне, что прошли через каждый ответ в связанном вопросе и все еще думаете, что это не дубликат? Думаю, нет. Читайте о делегировании объектов и протоколах. – JAL

ответ

0

Существует фантастическая вещь под названием NSUserDefaults. Это словарь, к которому можно получить доступ в то время в приложении. Чтобы установить объект:

NSUserDefaults.standardUserDefaults().setObject(YourObject, forKey: "key") 

Тогда для доступа к нему где-нибудь еще:

NSUserDefaults.standardUserDefaults().objectForKey("key") 

Имейте в виду, что вы должны преобразовать объект во втором фрагменте, поскольку возвращаемый объект типа AnyObject.

Надеюсь, это поможет!

0

Да, это возможно. Но вам нужно будет создать экземпляр вашего следующего контроллера представления и сохранить ссылку на него где-нибудь. Также этот контроллер просмотра должен быть видимым для вашего начального контроллера.

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

0

Попробуйте загрузить данные в firebase и затем восстановить их в другом контроллере.

+0

Это не дает ответа на вопрос. Когда у вас будет достаточно [репутации] (https://stackoverflow.com/help/whats-reputation), вы сможете [прокомментировать любое сообщение] (https://stackoverflow.com/help/privileges/comment); вместо этого [предоставить ответы, которые не требуют разъяснений у аськи) (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- я-делать-вместо этого). - [Из обзора] (/ review/low-quality-posts/18572352) –