2011-07-18 46 views
0

我正在開發一個iPad應用程序。如何初始化一個自定義的GUI類?

現在我遇到了以下問題。我爲UIScrollView創建了一個「自定義類」。所以在我的筆尖文件中,我添加了默認UIScrollView並將​​設置爲MultiSelectView(這是我創建的自定義類)。屏幕截圖here

所以在我的MultiSelectView我已經添加了一些我想要使用的方法。這工作!

問題是我想知道如何在這些方法中初始化我需要的某些對象。看起來好像- (id)initWithFrame:(CGRect)frame {}未被調用,並且都不是- (void) viewDidLoad {}

因此,有沒有辦法來初始化一個自定義(GUI)類?

回答

2

當您從.xib文件取消存檔視圖時,它不會發送-initWithFrame:,正如您已經注意到的那樣。相反,它被髮送-initWithCoder:

因此,如果您在需要自定義初始化的.xib文件中有任何UIView子類,則需要覆蓋-initWithCoder:以及(或不是)-initWithFrame:

+0

Tnx!實現'-initWithCoder:'方法取得了訣竅。 – Jules

1

看起來你需要initWithCoder,當對象從NIB

或者,更好,awakeFromNib加載它被調用。不同的是,當所有插座連接時,調用awakeFromNib