-2

谁能告诉我为什么函数没有在这里调用

类 MasterViewController.h

@interface MasterViewController : UITableViewController 
- (void) populateTableView;

类 ModelViewController.h

#import "MasterViewController.h"
@interface ModelViewController : UIViewController
@property (strong, nonatomic) MasterViewController *MasterViewController;

类 ModelViewController.m

@synthesize MasterViewController;
[MasterViewController.self populateTableView]; // Function Calling
4

1 回答 1

2
@property (strong, nonatomic) MasterViewController *MasterViewController;

在这里,您使用 name 声明了一个实例变量(属性)MasterViewController,它与其类名相同。实际上,当您populateTableView向 MasterViewController 发送消息时,编译将其视为类方法+ (void)populateTableView;)而不是实例方法- (void)populateTableView;)。

所以你最好将这个 iVar 声明为masterViewControllerm小写)。

@property (strong, nonatomic) MasterViewController *masterViewController;

然后在您的方法中分配并使用它:

...
[self.masterViewController populateTableView];
于 2012-11-01T07:50:29.107 回答