我在自定义uiview类中创建了一个方法setupLabels
,我尝试使用viewDidLoad
在mainViewController [self setupLabels]
方法中调用此方法但是我给出了undefined setupLabels的错误,怎么能我从uiview类访问-(void)setUpLabels{
方法到mainviewController?
答案 0 :(得分:1)
您收到错误是因为您的setUpLabels
方法位于自定义类中,ViewController
没有引用它。您需要为其他类提供使用方法的参考。
首先,您需要创建自定义UIView类的对象。
将您的方法-(void)setUpLabels
放在自定义视图类的.h
文件中。在自定义类的.m
中实现它。
现在,在视图控制器的viewDidLoad
中,根据自定义类的类型,您必须创建该视图的对象:
如果您使用的是xib:
MyCustomView *customView = [[[NSBundle mainBundle] loadNibNamed:@"MyCustomView" owner:nil options:nil] firstObject];
[customView setUpLabels];
如果不使用Xib
MyCustomView *customView = [[MyCustomView alloc] init];
[customView setUpLabels];
最后使用viewDidLoad
方法:
- (void)viewDidLoad
{
MyCustomView *customView = [[MyCustomView alloc] init];
customView.frame = CGRectMake(100,10,200,100);
[customView setUpLabels];
[self.view addSubview:customView];
}