繁体   English   中英

如何从另一个视图控制器调用方法

[英]How do I call a method from another view controller

我想调用这个方法:

- (void)getUserFriendTargetDialogRequest {
    currentAPICall = kAPIFriendsForTargetDialogRequests;
    [self apiGraphFriends];
}

来自另一个viewcontroller中的条件语句:

if (idx == 2) {
        NSLog(@"you touched menu 2");

        APICallsViewController *apiViewController = [APICallsViewController alloc];
        [self.navigationController pushViewController:apiViewController animated:YES]; 
    }

任何人都可以帮助解决这个问题吗?

非常感谢

首先,您可能还希望通过以下方式初始化您的APICallsViewController:

    APICallsViewController *apiViewController = [[APICallsViewController alloc] initWithNibName:nil bundle:nil];

然后,如果getUserFriend ...是APIViewController的方法,您可以这样做:

    [apiViewController getUserFriendTargetDialogRequest];

但是,由于您没有从其他视图控制器传递任何参数,因此可以考虑在init方法或APICallsViewController的viewDidLoad方法中调用它。

OtherViewController *viewController = [[OtherViewController alloc]         
                                           init];
[viewController methodName];
[viewController release];

1>只需分配方法所在的类,然后通过该类的对象调用它。

ViewControllWithMethod *view=[ViewControllWithMethod  alloc]]init];
[view getUserFriendTargetDialogRequest];

2>您可以通过className.getUserFriendTargetDialogRequest将其作为类方法,而不是实例方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM