Ios 更改自定义UIView的UILabel文本';行不通

Ios 更改自定义UIView的UILabel文本';行不通,ios,objective-c,ipad,uiview,xib,Ios,Objective C,Ipad,Uiview,Xib,我有一个自定义的UIView,它是用xib构建的,它有一个名为CustomModuleUIView的文件所有者,其中包含标签和按钮。我已经在我的Rootviewcontroller中调用了这个自定义视图,并使用initWithCoder方法成功地显示了它。问题是我无法从customMouleUIView或根ViewController更改UILabel的默认文本。我在initWithCoder中找到了一个示例,它告诉我在initWithCoder中进行自定义初始化,但它对我不起作用,没有任何更改

我有一个自定义的
UIView
,它是用xib构建的,它有一个名为
CustomModuleUIView
的文件所有者,其中包含标签和按钮。我已经在我的Rootviewcontroller中调用了这个自定义视图,并使用
initWithCoder
方法成功地显示了它。问题是我无法从
customMouleUIView
或根
ViewController
更改
UILabel
的默认文本。我在
initWithCoder
中找到了一个示例,它告诉我在
initWithCoder
中进行自定义初始化,但它对我不起作用,没有任何更改,并且显示默认文本时没有任何错误

这是我的自定义UIView xib

这是我的根视图控制器

这是我的代码哦自定义UIView.h

 #import <UIKit/UIKit.h>

@interface ModuleCustomUIView : UIView

-(void) setup;
@property (weak, nonatomic) IBOutlet UIImageView *_moduleIcon;
@property (retain, nonatomic) IBOutlet UILabel *_moduleName;
- (IBAction)openDemo:(id)sender;
- (IBAction)close:(id)sender;
@property (weak, nonatomic) IBOutlet UIImageView *_moduleImage;
@property (strong, nonatomic) IBOutlet UILabel *_positionLabel;

@end
在initWithCoder内部,导致无限循环

-(id)initWithCoder:(NSCoder *)aDecoder
{
    self = [super initWithCoder:aDecoder];
    if(self)
    {
    }
    return self;
}

-(void) setup
{
    NSString *xib= @"CustomUIView";
    NSArray *array=[[NSBundle mainBundle] loadNibNamed:xib owner:self options:nil] ;
    UIView *view =[array objectAtIndex:0];
    //code that doesn't work
    [_positionLabel setText:@"hello world"];
    //
    [self addSubview:view];
}
这是我的根视图控制器

- (void)viewDidLoad
{
    [super viewDidLoad];
    [_moduleCustomView setup];
    [self.view addSubview:_moduleCustomView];
    //code doesn't work 
    [_moduleCustomView setText:@"hello world"];
}

即使在did加载中,我也无法更改文本

我想文件所有者属性应该是您的“根视图控制器”。

我想文件所有者属性应该是您的“根视图控制器”。

我发现了我的错误,这是关于文件所有者的,我在检查器中更改了它,但通过选择uiview而不是te文件的所有者,我将NSObject更改为我的类名并重新连接标签。

我发现了我的错误,这是关于文件所有者的,我在inspector中更改了它,但选择了uiview而不是te文件的所有者,我将NSObject更改为我的类名并重新连接标签。

请发布您的代码。您是否将xib中的标签链接到视图控制器中相应的IBOutlet?我现在只能在8小时后添加注释这是stackoverflow告诉我的。我已在文件所有者中将xib和标签与IB链接请发布您的代码。您链接了吗xib中的标签与视图控制器中相应的IBOutlet?stackoverflow告诉我,我现在只能在8小时后添加注释。我已经在文件所有者中将xib和标签与IB链接。我想我无法将基于UIView的xib与UIViewController链接?抱歉误读。。。您是否尝试过
[view.positionLabel setText:@“hello world”]在您的设置方法中?或
[\u moduleCustomView.positionLabel setText:@“hello world”]
在你的viewDidLoad方法中?是的,这就是我在没有任何更改的情况下所做的,昨天我尝试了从NIB方法中唤醒它,我可以更改它,但我想动态编辑它。我想我无法将基于UIView的xib与UIViewController链接?对不起,误读了。。。您是否尝试过
[view.positionLabel setText:@“hello world”]在您的设置方法中?或
[\u moduleCustomView.positionLabel setText:@“hello world”]
在您的viewDidLoad方法中?是的,这就是我所做的,没有任何更改,昨天我尝试了awakeFromNib方法,我可以更改它,但我想动态编辑它。
- (void)viewDidLoad
{
    [super viewDidLoad];
    [_moduleCustomView setup];
    [self.view addSubview:_moduleCustomView];
    //code doesn't work 
    [_moduleCustomView setText:@"hello world"];
}