从非视图类获取presentViewController (Objective-C)
在Objective-C中,presentViewController是一个用于在视图控制器之间进行页面跳转的方法。通常情况下,我们可以在视图控制器类中直接调用该方法来实现页面的展示和切换。但是,在某些情况下,我们可能需要在非视图类中获取到当前的视图控制器,并使用presentViewController方法进行页面跳转。
要在非视图类中获取到当前的视图控制器,可以通过以下步骤实现:
#import <UIKit/UIKit.h>
UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow];
UIViewController *rootViewController = keyWindow.rootViewController;
UIViewController *presentedViewController = rootViewController.presentedViewController;
[presentedViewController presentViewController:yourViewController animated:YES completion:nil];
需要注意的是,以上步骤中的yourViewController是你要展示的目标视图控制器,可以根据实际情况进行替换。
这种方式可以在非视图类中获取到当前的视图控制器,并使用presentViewController方法进行页面跳转。适用场景包括但不限于:在工具类、网络请求类、数据处理类等非视图类中需要进行页面跳转的情况。
腾讯云相关产品推荐:
以上是关于从非视图类获取presentViewController的解答,希望能对您有所帮助。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云