mirror of
https://github.com/DKJone/DKWechatHelper.git
synced 2026-07-28 21:34:31 +08:00
适配IPad
解决IPad打开小助手崩溃问题
This commit is contained in:
@@ -12,12 +12,20 @@
|
||||
#import "DKGroupFilterController.h"
|
||||
@interface DKHelperSettingController ()<MultiSelectGroupsViewControllerDelegate>{
|
||||
WCTableViewManager * manager;
|
||||
MMUIViewController *helper;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation DKHelperSettingController
|
||||
|
||||
-(instancetype)init{
|
||||
if (self = [super init]) {
|
||||
helper = [[objc_getClass("MMUIViewController") alloc] init];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
self.title = @"小助手设置";
|
||||
@@ -259,4 +267,13 @@
|
||||
[self dismissViewControllerAnimated:YES completion:nil];
|
||||
}
|
||||
|
||||
|
||||
// 没法设置父类,设置消息转发以调用相关类方法
|
||||
- (MMUIViewController *) forwardingTargetForSelector:(SEL)aSelector {
|
||||
if ([helper respondsToSelector:aSelector]) {
|
||||
return helper;
|
||||
}
|
||||
return nil;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -26,18 +26,15 @@
|
||||
|
||||
|
||||
+ (UINavigationController *)navigationContrioller{
|
||||
|
||||
UITabBarController * tabbarVC = (UITabBarController *)UIApplication.sharedApplication.keyWindow.rootViewController;
|
||||
NSArray<UINavigationController *> *vcs = tabbarVC.childViewControllers;
|
||||
|
||||
return vcs[tabbarVC.selectedIndex];
|
||||
return ((UINavigationController *)([objc_getClass("CAppViewControllerManager") getCurrentNavigationController]));
|
||||
}
|
||||
|
||||
+ (UIBarButtonItem *)leftNavigationItem{
|
||||
|
||||
UINavigationController * navc = [DKHelper navigationContrioller];
|
||||
if (navc.viewControllers.count > 1){
|
||||
return ((UIViewController *)navc.viewControllers[1]).navigationItem.leftBarButtonItem;
|
||||
for (UIViewController *vc in navc.childViewControllers) {
|
||||
UIBarButtonItem * item = vc.navigationItem.leftBarButtonItem;
|
||||
if (item) { return item; }
|
||||
}
|
||||
return nil;
|
||||
}
|
||||
|
||||
@@ -319,6 +319,18 @@
|
||||
|
||||
@end
|
||||
|
||||
|
||||
|
||||
@interface CAppViewControllerManager: NSObject
|
||||
|
||||
+ (id)topViewControllerOfWindow:(id)arg1;
|
||||
+ (id)topViewControllerOfMainWindow;
|
||||
+ (id)topMostController;
|
||||
+ (id)getCurrentNavigationController;
|
||||
+ (id)getTabBarController;
|
||||
+ (id)getAppViewControllerManager;
|
||||
|
||||
@end
|
||||
#endif /* WechatHeaders_h */
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user