[英]iOS sideMenu retention
我正在关注本教程: http : //www.appcoda.com/ios-programming-sidebar-navigation-menu/
但是,我需要能够从类视图控制器访问侧面菜单,如图所示 。 我的第一个视图控制器是一个登录屏幕,用户需要使用该屏幕登录服务器。 为了解决这个问题,我在揭示视图控制器
@property (strong, atomic, retain) NSString *SWSegueFrontIdentifier;
设置了一个属性@property (strong, atomic, retain) NSString *SWSegueFrontIdentifier;
。 然后,我使用getter和setter来指定应该向/从哪个视图控制器。 我在视图控制器中分配了第一个值sw_first
,一切都很好。 在同学视图控制器的ViewDidLoad中,如第二sw_front
图所示,我分配了sw_front
。 但是,即使在同一函数中设置了该属性,如果我尝试从显示控制器打印属性,它最终也会返回null。 但是,如果我在视图控制器内手动将SWSegueFrontIdentifier
切换为sw_front
,则可以很好地进行搜索,但最终会跳过我的视图控制器(即我的登录控制器)。 我只需要一种方法就可以从同学的视图控制器中访问侧面菜单并且没有任何运气,因为似乎www.cocoacontrols.com上的大多数东西都是没有故事板的,并且似乎无法得到它们上班。
此代码返回null:
[self.revealViewController setSWSegueFrontIdentifier:@"sw_front"];
tempMenuButton.target = self.revealViewController;
tempMenuButton.action = @selector(revealToggle:);
NSLog(@"reveal view controller prop2: %@", self.revealViewController.SWSegueFrontIdentifier);
关于如何使它起作用的任何想法?
编辑:我唯一能想到的是某种形式的内存保留问题,但我似乎无法弄清楚。
声明属性@property(强,原子,保留)后,NSString * SWSegueFrontIdentifier;
您是否使用过合成方法来创建吸气剂和吸气剂
@synthesize SWSegueFrontIdentifier = _SWSegueFrontIdentifier;
然后你就这样做
self.revealViewController.setSWSegueFrontIdentifier =@"sw_front";
这就是我想出的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.