gpt4 book ai didi

ios - pushViewController 不工作

转载 作者:行者123 更新时间:2023-11-28 20:29:39 27 4
gpt4 key购买 nike

我在 appDelegate 中设置了 navigationController,但现在我在另一个 ViewController 中记忆起它,但它不起作用。这是我的代码:

在appDelegate.h中

  #import <UIKit/UIKit.h>

@class RootViewController;

@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;

@property (strong, nonatomic) RootViewController *viewController;

@property (strong, nonatomic) UINavigationController * navigationController;

@end

在 appDelegate.m 中

  @implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{

RootViewController * rootMenu;
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
rootMenu = [[RootViewController alloc] initWithNibName:@"RootViewController_iPhone" bundle:nil];
} else {
rootMenu = [[RootViewController alloc] initWithNibName:@"RootViewController_iPad" bundle:nil];
}

self.viewController = rootMenu;

self.navigationController =[[UINavigationController alloc]initWithRootViewController:rootMenu];

self.window.rootViewController = self.viewController;

[self.window makeKeyAndVisible];
return YES;
}

在rootViewController.h中

    #import <UIKit/UIKit.h>

@interface RootViewController : UIViewController <UIGestureRecognizerDelegate>{

}

@property (nonatomic, retain) UIImageView * bigImageView;
@property (nonatomic, assign)BOOL fromRootViewController;


- (void)handleTap:(UITapGestureRecognizer *)recognizer;




@end

在 RootViewController.m 中

   - (void)handleTap:(UITapGestureRecognizer *)recognizer{

if (recognizer.state == UIGestureRecognizerStateEnded) {
MenuViewController * menu = [[MenuViewController alloc]initWithNibName:@"MenuViewController" bundle:nil];

self.fromRootViewController = YES;

[self.navigationController pushViewController:menu animated:YES];



}
}

提前致谢

最佳答案

将 AppDelegate 中的第 1 行替换为第 2 行

1)self.window.rootViewController = self.viewController;

2)self.window.rootViewController = self.navigationController;

它会起作用

reason is that there is no navigationController in your application

关于ios - pushViewController 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12746120/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com