我正在制作一个应用程序,在切换到View Controller B之后我需要View Controller A的地图处于相同的状态。但是,我不知道如何切换视图以查看相同的状态?这意味着当我从View Controller B切换回View Controller A时,我的印象是我需要创建View Controller A的新实例,然后推送该View Controller。但是,这意味着我从第一次加载时丢失了所有实例数据。如何在第一次进入该视图时保留数据?
答案 0 :(得分:0)
我的印象是我需要创建View Controller A的新实例,然后推送该View Controller。
绝对不是。假设您正在使用导航控制器,并且您已按下控制器B,只需将其弹出(导航控制器上的popViewController:
)即可返回到A的原始实例。
创建A的新实例似乎是一个坏主意,因为它可能导致无限高的导航堆栈。
如果您要呈现模态视图控制器,原理是相同的。 present...
将B放在A的顶部。dismiss...
将删除B并将您带回原来的A.
答案 1 :(得分:0)
您需要了解当您从一个视图控制器移动到下一个视图时,在您将控制权返回给IOS(或者您已退出该方法)之前,新视图不会显示。
示例
presentviewcontroller ...... ..
做点什么
返回; - >您的新视图控制器仅在此语句后获得控制权 }
所以变量就像 NSString * c = @“YES”; 将会消失,但
properties such as
@property (nonatomic,strong) *c;
will retain whatever value you have placed in it.
这是你的问题吗?