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

han*_*Dev 2 iphone objective-c facebook-graph-api ios

我想调用这个方法:

- (void)getUserFriendTargetDialogRequest {
    currentAPICall = kAPIFriendsForTargetDialogRequests;
    [self apiGraphFriends];
}
Run Code Online (Sandbox Code Playgroud)

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

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

        APICallsViewController *apiViewController = [APICallsViewController alloc];
        [self.navigationController pushViewController:apiViewController animated:YES]; 
    }
Run Code Online (Sandbox Code Playgroud)

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

非常感谢

Mat*_*att 11

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

    APICallsViewController *apiViewController = [[APICallsViewController alloc] initWithNibName:nil bundle:nil];
Run Code Online (Sandbox Code Playgroud)

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

    [apiViewController getUserFriendTargetDialogRequest];
Run Code Online (Sandbox Code Playgroud)

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


Teo*_*rig 5

OtherViewController *viewController = [[OtherViewController alloc]         
                                           init];
[viewController methodName];
[viewController release];
Run Code Online (Sandbox Code Playgroud)