Ios AppDelegate可以重定向??I';我得到的错误委托不是方法

Ios AppDelegate可以重定向??I';我得到的错误委托不是方法,ios,objective-c,Ios,Objective C,如果可能的话,我正在寻找应用程序委托重定向回主故事,但我一直遇到一个错误,即应用程序委托方法不起作用 AppDelegate.h #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate,UIAlertViewDelegate> @property (strong, nonatomic) UIWindow *window; @end 我想知道,当单击UI

如果可能的话,我正在寻找应用程序委托重定向回主故事,但我一直遇到一个错误,即应用程序委托方法不起作用

AppDelegate.h

#import <UIKit/UIKit.h>

@interface AppDelegate : UIResponder <UIApplicationDelegate,UIAlertViewDelegate>

@property (strong, nonatomic) UIWindow *window;


@end

我想知道,当单击UIAlertView时,是否可以将它们重定向回主板?只需在现有窗口上设置根视图控制器即可。您不需要创建新窗口,也不需要将其设置为关键点和可见窗口

如果您想喜欢,可以使用UIView transition或CATTransition设置过渡动画


不过,这似乎是一件不寻常的事情——您将丢失任何状态或未保存的数据,这对您的用户来说可能非常奇怪

只需在现有窗口上设置根视图控制器即可。您不需要创建新窗口,也不需要将其设置为关键点和可见窗口

如果您想喜欢,可以使用UIView transition或CATTransition设置过渡动画


不过,这似乎是一件不寻常的事情——您将丢失任何状态或未保存的数据,这对您的用户来说可能非常奇怪

只需在现有窗口上设置根视图控制器即可。您不需要创建新窗口,也不需要将其设置为关键点和可见窗口

如果您想喜欢,可以使用UIView transition或CATTransition设置过渡动画


不过,这似乎是一件不寻常的事情——您将丢失任何状态或未保存的数据,这对您的用户来说可能非常奇怪

只需在现有窗口上设置根视图控制器即可。您不需要创建新窗口,也不需要将其设置为关键点和可见窗口

如果您想喜欢,可以使用UIView transition或CATTransition设置过渡动画


不过,这似乎是一件不寻常的事情——您将丢失任何状态或未保存的数据,这对您的用户来说可能非常奇怪

如果要显示视图控制器,请尝试以下操作:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSString *title = [alertView buttonTitleAtIndex:buttonIndex];

    if([title isEqualToString:@"Okay"])
    {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        UIViewController *vc = [storyboard instantiateInitialViewController];
        [self.window.rootViewController presentViewController:vc animated:YES completion:nil]

    }
}

如果要显示视图控制器,请尝试以下操作:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSString *title = [alertView buttonTitleAtIndex:buttonIndex];

    if([title isEqualToString:@"Okay"])
    {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        UIViewController *vc = [storyboard instantiateInitialViewController];
        [self.window.rootViewController presentViewController:vc animated:YES completion:nil]

    }
}

如果要显示视图控制器,请尝试以下操作:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSString *title = [alertView buttonTitleAtIndex:buttonIndex];

    if([title isEqualToString:@"Okay"])
    {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        UIViewController *vc = [storyboard instantiateInitialViewController];
        [self.window.rootViewController presentViewController:vc animated:YES completion:nil]

    }
}

如果要显示视图控制器,请尝试以下操作:

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
    NSString *title = [alertView buttonTitleAtIndex:buttonIndex];

    if([title isEqualToString:@"Okay"])
    {
        UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
        UIViewController *vc = [storyboard instantiateInitialViewController];
        [self.window.rootViewController presentViewController:vc animated:YES completion:nil]

    }
}


你得到了什么错误?现在它完全崩溃了,上面的代码。我不知道出了什么问题,我检查过一切正常。在UIAlertView之后重定向回应用程序有那么难吗?你能更具体一点吗?“完全崩溃”和“顶级代码”毫无意义。您需要显示崩溃日志、任何异常以及崩溃的代码行。如果需要,请设置一个异常断点。您将得到什么错误?现在它与顶级代码完全崩溃。我不知道出了什么问题,我检查过一切正常。在UIAlertView之后重定向回应用程序有那么难吗?你能更具体一点吗?“完全崩溃”和“顶级代码”毫无意义。您需要显示崩溃日志、任何异常以及崩溃的代码行。如果需要,请设置一个异常断点。您将得到什么错误?现在它与顶级代码完全崩溃。我不知道出了什么问题,我检查过一切正常。在UIAlertView之后重定向回应用程序有那么难吗?你能更具体一点吗?“完全崩溃”和“顶级代码”毫无意义。您需要显示崩溃日志、任何异常以及崩溃的代码行。如果需要,请设置一个异常断点。您将得到什么错误?现在它与顶级代码完全崩溃。我不知道出了什么问题,我检查过一切正常。在UIAlertView之后重定向回应用程序有那么难吗?你能更具体一点吗?“完全崩溃”和“顶级代码”毫无意义。您需要显示崩溃日志、任何异常以及崩溃的代码行。如果需要,请设置一个异常断点。你是说这样的吗?UINavigationcontroller*nvc=[[UINavigationcontroller alloc]initWithRootViewController:rootVC];self.window.rootViewController=nvc;是的,但是如果你使用的是故事板,你已经拥有的初始视图控制器就可以了。这样可以吗?UIStoryboard*情节提要=[UIStoryboard情节提要,名称:@“情节提要”捆绑包:nil];UIViewController*initViewController=[storyboard InstanceEviewController标识符:nil];[(UINavigationController*)self.window.rootViewController pushViewController:initViewController动画:否];不。您不会得到没有标识符的视图控制器。正如我所说,您问题中的代码很好,除了重新创建窗口并将其设置为key和visible之外。这是正确的吗?UIStoryboard*情节提要=[UIStoryboard情节提要,名称:@“MainstryBoard”捆绑包:nil];DailMessage*rootViewController=[storyboard InstanceEviewController标识符:@“DailMessage”];self.window.rootViewController=rootViewController;你是说像这样的?UINavigationcontroller*nvc=[[UINavigationcontroller alloc]initWithRootViewController:rootVC];self.window.rootViewController=nvc;是的,但是如果你使用的是故事板,你已经拥有的初始视图控制器就可以了。这样可以吗?UIStoryboard*情节提要=[UIStoryboard情节提要,名称:@“情节提要”捆绑包:nil];UIViewController*initViewController=[storyboard InstanceEviewController标识符:nil];[(UINavigationController*)self.window.rootViewController pushViewController:initViewController动画:否];不。您不会得到没有标识符的视图控制器。正如我所说,您问题中的代码很好,除了重新创建窗口并将其设置为key和visible之外。这是正确的吗?UIStoryboard*情节提要=[UIStoryboa]