爲了得到你要加載它首先發送loadNibNamed:owner:options:
消息一個NSBundle類廈門國際銀行文件的內容。
考慮你有一個名爲CustomView和CustomView.xib文件的UIView子類。在xib文件中,每個視圖都有一個標籤。您的.h文件看起來像:
@interface CustomView : UIView
@property (nonatomic, assign) UILabel *someTextLabel; //use assign in order to not to override dealloc method
@end
.m
@implementation CustomView
- (id)init {
self = [super init];
if (self) {
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"CustomView" owner:nil options:nil];
[self addSubview:[topLevelObjects objectAtIndex:0]]; //this object is a CustomView.xib view
self.someTextLabel = (UILabel *)[self viewWithTag:5]; //consider you have a UILabel on CustomView.xib that has its tag set to 5
}
return self;
}
@end
這是關於如何使用.xibs爲您的自定義UIView子類。如果你的應用就像一個聊天,那麼你必須以編程方式添加它們。
至於在兩個自定義視圖之間發送消息的最佳方式,您必須在每個視圖中爲彼此創建一個弱引用。
在一個
@property (nonatomic, assign) CustomView *customView;
在另一個
@property (nonatomic, assign) AnotherCustomView *anotherCustomView;
,只是向他們發送消息時,有些人甚至會發生
- (void)buttonPressed {
[customView handleButtonPressedEvent];
}
讓我知道這是顯而易見的。
謝謝。沒有解決這個問題,但它讓我開始了! –