[英]How to change dynamically the xib of a UIVIewController
我有一個UIVIewController“controller1”。 該控制器使用initWithNibName ...與“file1.xib”進行實例化。 我想動態地將我的“controller1”的xib文件更改為“file2.xib”
恢復 :
“controller1”< - >“file1.xib”,我想動態地擁有:“controler1”< - >“file2.xib”
我怎樣才能做到這一點 ?
希望我很清楚。
如果要在UIViewController中更改視圖,只需使用以下代碼:
NSArray *nibObjs = [[NSBundle mainBundle] loadNibNamed:@"file2" owner:self options:nil];
UIView *aView = [nibObjs objectAtIndex:0];
self.view = aView;
我有兩個回應:
1)為什么 - 這不是你通常會做的事情 - 這個案例的特殊之處是什么? 事實上,我要編輯它更加強調 - > 不要做它 < - UIViewController中會有你不了解的各種依賴(例如,如果內存不足)警告和你的視圖控制器卸載它的視圖,哪個xib會從必須再次顯示它時加載視圖?)
2) 如果你迫切需要,你可以刪除視圖並重新加載它雖然NSBundle的loadNibNamed:owner:傳入新的xib和self作為所有者。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.