[英]Cant load xib file from UIViewController
我正在嘗試從我的UIViewController
加載一個xib文件。
在.h
UIView *myView;
@property(nonatomic, retain) IBOutlet UIView *myView;
在我的.m
@synthesize myView;
if([[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil]) {
[self.myView setFrame:CGRectMake(0, 0, 320, 480)];
[[UIApplication sharedApplication].keyWindow addSubview:self.myView];
}
從相同的UIViewController
我加載和刪除xib文件。 我在上面的例子中使用了相同的代碼,並且它有效。 它的一個特定的xib文件似乎有問題。 我檢查過,窗口是否為零。 但事實並非如此。 無法弄清問題是什么。
編輯: self
是否有可能過早地被釋放
在加載此xib文件之前,我使用相同的代碼來加載另一個xib文件。 這很好。 我試圖在此視圖上方加載當前的xib文件。
也許確保您的xib文件已添加到目標的“復制包資源”部分,在“構建階段”部分中。 (並仔細檢查它是否已添加到導航菜單資源)。
嘗試這個:
if([[[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil] objectAtIndex:0]) {
[self.myView setFrame:CGRectMake(0, 0, 320, 480)];
[[UIApplication sharedApplication].keyWindow addSubview:self.myView];
}
我認為問題可能是“loadNibNamed”返回頂級對象的NSArray。
如果您將此視圖加載到另一個UIView
,並且如果正確加載了該UIView
,則可以將此視圖添加為UIView
的子視圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.