ios 中有没有获取当前controller的方法?
1
yuan925 2015-05-14 15:25:51 +08:00
根据响应链模式,获取当前view的controller,可以用self.nextResponder获取
|
2
ycge234 2015-05-14 15:46:45 +08:00
github上有个ios-category,常用的方法都有,包括这个。
|
3
chmlai 2015-05-14 15:57:18 +08:00
什么叫当前 Controller?
|
4
tsinghan OP |
5
superleexpert 2015-05-14 17:23:40 +08:00
可以设置个单例保存
|
6
knightlhs 2015-05-14 17:26:31 +08:00
当前 Controller 是个什么鬼?当前正在运行的 Controller 有一大堆……
话说你的意思是获取当前主线程的 Controller?当前显示的 View 的 Controller? |
7
metrue 2015-05-15 09:57:31 +08:00 via iPhone
当前controller?主进程所处的controller?
|
8
yanchao7511461 2015-05-16 07:44:08 +08:00
lz肯定是说当前函数所在的controller,比如函数中有一个需求判断当前controller,我猜是这样的
|
9
xunfeng 2015-05-16 10:51:50 +08:00
弄个全局变量,再controller的viewDid appear 方法中,更新当前可见的viewcontrollers (具体可以通过发送通知,或者全局变量直接更新(感觉不是很优雅)),这个方法可以获得当前程序中所有在“可见”的controller。不过貌似对于pop window就无法跟踪,可以看看文档viewDidappear在啥时候不会被调用。
|
10
vincentxue 2015-05-16 14:01:04 +08:00
完全不明白楼主的意思,什么叫当前的 Controller,不是 self 吗,为什么要获取?
|
11
zhugeafanti 2015-05-22 14:18:12 +08:00
- (UIViewController *)viewController {
UIResponder *next = [self nextResponder]; do { if ([next isKindOfClass:[UIViewController class]]) { return (UIViewController *)next; } next = [next nextResponder]; } while (next != nil); return nil; } 自己用的一个view的category |