iOS开发——获取当前屏幕显示的viewcontroller

  获取当前屏幕显示的viewcontroller,然后想怎么跳就怎么跳。

- (UIViewController *)getCurrentVC

{

UIViewController *result = nil;

UIWindow * window = [[UIApplication sharedApplication] keyWindow];

if (window.windowLevel != UIWindowLevelNormal)

{

NSArray *windows = [[UIApplication sharedApplication] windows];

for(UIWindow * tmpWin in windows)

{

if (tmpWin.windowLevel == UIWindowLevelNormal)

{

window = tmpWin;

break;

}

}

}

UIView *frontView = [[window subviews] objectAtIndex:0];

id nextResponder = [frontView nextResponder];

if ([nextResponder isKindOfClass:[UIViewController class]])

result = nextResponder;

else

result = window.rootViewController;

return result;

}

时间: 2024-08-06 23:03:25

iOS开发——获取当前屏幕显示的viewcontroller的相关文章

获取当前屏幕显示的viewcontroller

//获取当前屏幕显示的viewcontroller - (UIViewController *)getCurrentVC { UIViewController *result = nil; UIWindow * window = [[UIApplication sharedApplication] keyWindow]; if (window.windowLevel != UIWindowLevelNormal) { NSArray *windows = [[UIApplication shar

iOS开发- 获取精确剩余电量

[UIDevice currentDevice].batteryMonitoringEnabled = YES; double deviceLevel = [UIDevice currentDevice].batteryLevel; 获取当前剩余电量, 我们通常采用上述方法.这也是苹果官方文档提供的. 它返回的是0.00-1.00之间的浮点值.  另外, -1.00表示模拟器. 貌似这个方法不错, 也很简单. 但是仔细观察它的返回值, 我们可以发现. 它是以0.05递变的. 折算成100% 也就

UI基础 获取当前屏幕显示的viewcontroller

1 #pragma mark - 获取当前屏幕显示的viewcontroller 2 - (UIViewController *)getCurrentVC 3 { 4 UIViewController *result = nil; 5 6 UIWindow * window = [[UIApplication sharedApplication] keyWindow]; 7 if (window.windowLevel != UIWindowLevelNormal) 8 { 9 NSArray

iOS开发 - 获取真机沙盒数据

今天要获取之前真机测试时写入沙盒的数据, 本来以为挺麻烦的. 后来捣腾了一下, 才知道原来这么简单... 下面直接看具体步骤. 前提: 真机已经通过USB和你的电脑连接上了! 1.进入Organizer 2.选择你的应用. 并导出数据.(点击Download) 3.保存数据到相应位置.(点击Save) 4.打开, 查看数据. 保存完毕后, 你后发现一个这样的文件. 选中它, 右键---->显示包内容. 然后进入------->AppData ------>Documents. 即可看到你

IOS开发 获取当前视图所在的类名

NSString *stringClass = NSStringFromClass([(UINavigationController *)self.window.rootViewController topViewController].class); IOS开发 获取当前视图所在的类名

iOS 开发获取唯一标识

在做流量精灵的时候有这样一个需求,帐户默认需要取手机的imsi 信息.这就有一个好处,即便用户删除我们的应用后从新下载,下次进入时他们还会以同样的身份登陆,并且获得原先纪录.这样不仅对于开发公司人员来说可以统计他是不是新用户,而且对于用户来说可以不用担心之前记录是否被删除.(——我们的软件是不需要注册的,只要用户登录就默认以imsi 为唯一标示来登记的). 但是在iOS开发中,发现不同的系统如 iOS5.iOS6.0.以及iOS7,苹果对它处理的态度是完全不同的.估计苹果是对系统安全的考虑,6.

iOS开发 获取手机信息(UIDevice,NSBundle,NSlocale)

在开发中,需要获取当前设备的一些信息,可以通过UIDevice,NSbundle,NSlocale获取. UIDevice UIDevice 提供了多种属性,类函数及状态通知,可以检测手机电量,定位,感应,机型,当前系统版本等等. //设备相关信息的获取 NSString *strName = [[UIDevice currentDevice] name]; NSLog(@"设备名称:%@", strName);//e.g. "My iPhone" NSString

iOS开发-获取设备型号信息

开发中有的时候查看设计统计数据,或者通过日志查看错误信息,这个时候我们就需要获取获取设备信息,看下关于设备有几种方法: NSLog(@"%@",[[UIDevice currentDevice] name]);//设备名称 NSLog(@"%@",[[UIDevice currentDevice] model]);//设备类型 NSLog(@"%@",[[UIDevice currentDevice] localizedModel]); NSLo

ios开发获取验证码按钮读秒效果

方法一: - (void)startCountDown { _seconds = 60; NSString *str = [NSString stringWithFormat:@"%d秒后可重新获取", _seconds]; [_btnVerify setTitle:str forState:UIControlStateDisabled]; [_btnVerify.titleLabel setFont:[UIFont systemFontOfSize:12]]; [_btnVerify