我有A类,其中包含带有一些按钮的xib和一个包含tableView的UITextField和Class B. 我想将A类添加到表视图标题中。
我使用[[[NSBundle mainBundle] loadNibName: owner:self options:nil] objectAtIndex:0];
我只想反映classB中的按钮和textview动作。在ClassB中,我确实有一些UITextfield Delegate方法,我希望在在ClassA中定义和声明的uitextfield中输入一些文本时调用这些方法(.h文件中的xib +属性定义)。
A类.h:
//properties are set from xib file ClassA.xib
@interface ClassA : UIView
@property (unsafe_unretained, nonatomic) IBOutlet UIButton *addC;
@property(strong, nonatomic) IBOutlet UITextField *nText;
@end
班B.h
#import "ClassA"
@interface ClassB : UIViewController <UITextFieldDelegate, UITableViewDataSource,...>
@property (strong, nonatomic) IBOutlet UITableView *mTableView; //property set from ClassB.xib
@property(strong, nonatomic) IBOutlet UITextField *nText_B;
@property (unsafe_unretained, nonatomic) IBOutlet UIButton *addC_B;
- (IBAction)addC:(UIButton *)sender;
@end
我不知道如何将ClassB按钮和textfield链接到ClassA
在ClassB viewDidLoad
方法中我试过这个:
getHeader = [[ClassA alloc]init];
_addC_B = [getHeader addC];
_nText_B = [getHeader nText];
_nText_B.delegate =self;
_nText_B.text=@"";
但它不起作用 我是这方面的iOS新手。 谢谢你的帮助
答案 0 :(得分:0)
您无法连接位于XIB类之外的IBOutlet。但如果您只想访问其他课程的插座,可以在ClassA
中创建ClassB
的实例。然后访问instanceOfClassA.outletObject
答案 1 :(得分:0)
你还没有很好地解释你的问题。类不包含xibs&#34;。
如果您的目标是在XIB中创建一个用户界面并重复使用它,则可以使用[NSBundle loadNibNamed:owner:options:]
实现此目的。引用部分内容的最佳方式是通过Noval在他的回答中解释的属性。另一种可能性是将视图附加到&#34;文件的所有者&#34;出口的属性。