如何在iOS中从NSObject类导航到ViewController?

如何在iOS中从NSObject类导航到ViewController?,ios,uinavigationcontroller,Ios,Uinavigationcontroller,我面临着上周的一个问题。我的要求是,我必须创建一个自定义的NSObject类,在这个类中我必须为所有按钮单击操作编写所有导航方法。当我单击按钮时,按钮操作将根据单击和导航从该自定义NSObject类检索导航方法。但它不起作用。我正在实现的是,我在下面分享我的代码: 这是我的Method\u Action\u class.hclass #import <Foundation/Foundation.h> @interface Method_Action_class : NSO

我面临着上周的一个问题。我的要求是,我必须创建一个自定义的
NSObject
类,在这个类中我必须为所有按钮单击操作编写所有导航方法。当我单击按钮时,按钮操作将根据单击和导航从该自定义
NSObject
类检索导航方法。但它不起作用。我正在实现的是,我在下面分享我的代码:

这是我的
Method\u Action\u class.h
class

   #import <Foundation/Foundation.h>
   @interface Method_Action_class : NSObject
   -(void)login_method_called;
   @end
   #import "Method_Action_class.h"
   #import "Home_ViewController.h"

   @implementation Method_Action_class

   -(void)login_method_called
   {
       UIWindow *window=[UIApplication sharedApplication].keyWindow;
       Home_ViewController *home = [[Home_ViewController alloc] initWithNibName:@"Home_ViewController" bundle:nil];
       [window.rootViewController.navigationController pushViewController:home animated:YES];

   }
   @end
当我在按钮上调用此方法时,请单击:

   #import "Method_Action_class.h"

   Method_Action_class *demo = [[Method_Action_class alloc] init];
   [demo login_method_called];
注意:
Method\u Action\u类
是我的
NSObject
类型类

此处代码在没有警告/错误的情况下成功运行,但未导航到其他类


请帮助我。

请使用NSNotificationCenter并从该控制器使用PushView。或者您可以使用自定义委托。有关此信息,您可以参考


请使用NSNotificationCenter并从该控制器使用PushView。或者您可以使用自定义委托。有关此信息,您可以参考


在您的按钮单击操作中,您必须发送您的
UINavigationController
¤t
ViewController
。因为
NSObject
类未找到该控制器

在按钮操作中输入以下代码:

[demo login_method_called:self.navigationController withCurrentViewController:self];
在NSObject.h类中输入以下代码:

#import <Foundation/Foundation.h>
#import "Home_ViewController.h"

@interface Method_Action_class : NSObject

- (void)login_method_called:(UINavigationController*)navigation  withCurrentViewController:(UIViewController*) controller;
@end
#import "Method_Action_class.h"

@implementation Method_Action_class

-(void)login_method_called:(UINavigationController*)navigation  withCurrentViewController:(UIViewController*) controller
{
   Home_ViewController *home = [[Home_ViewController alloc] initWithNibName:@"Home_ViewController" bundle:nil];
   [navigation pushViewController:home animated:YES];
}
@end

并构建您的代码,它将成功导航。:)

在按钮单击操作中,您必须发送
UINavigationController
&当前
ViewController
。因为
NSObject
类未找到该控制器

在按钮操作中输入以下代码:

[demo login_method_called:self.navigationController withCurrentViewController:self];
在NSObject.h类中输入以下代码:

#import <Foundation/Foundation.h>
#import "Home_ViewController.h"

@interface Method_Action_class : NSObject

- (void)login_method_called:(UINavigationController*)navigation  withCurrentViewController:(UIViewController*) controller;
@end
#import "Method_Action_class.h"

@implementation Method_Action_class

-(void)login_method_called:(UINavigationController*)navigation  withCurrentViewController:(UIViewController*) controller
{
   Home_ViewController *home = [[Home_ViewController alloc] initWithNibName:@"Home_ViewController" bundle:nil];
   [navigation pushViewController:home animated:YES];
}
@end

并构建您的代码,它将成功导航。:)

嘿,老兄,我也面临着这样的问题。但我找到了解决办法。我将分享我的代码,请检查:)是的,请。谢谢你的回答,伙计,我也面临着这样的问题。但我找到了解决办法。我将分享我的代码,请检查:)是的,请。谢谢你的回复。谢谢你的回复。谢谢你的回复。谢谢你的回复。谢谢你的回复。谢谢你的回复。