UrK*_*UrK 3 xcode interface-builder ios xcode4.3
如何用XIB替换故事板?
在尝试创建动态视图及其控制器时,我失去了新故事板的所有优点.现在,当我尝试将其从项目中删除时,我创建了一个带有自己的控制器的新XIB,并将其替换为项目设置:

现在,在尝试运行应用程序时,它崩溃了,日志显示以下内容:
2012-04-08 14:50:16.567 Bazaart[11340:15203] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIApplication 0x8c15c20> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key view.'
Run Code Online (Sandbox Code Playgroud)
这是代码:UIRootWindow:
#import <UIKit/UIKit.h>
@interface UIRootWindow : UIViewController
@end
Run Code Online (Sandbox Code Playgroud)
及其相应的实施:
#import "UIRootWindow.h"
@implementation UIRootWindow
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
return self;
}
- (void)viewDidLoad {
[super viewDidLoad];
}
- (void)viewDidUnload {
[super viewDidUnload];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return YES;
}
@end
Run Code Online (Sandbox Code Playgroud)
编辑:
我有菲利普建议的窗口(见下文).但是......我这样做的方式似乎不是最好的.我做得对吗?
UIRootWindow *wnd = [[UIRootWindow alloc] init];
[wnd view];
[self setWindow:wnd.window];
Run Code Online (Sandbox Code Playgroud)
不要在Main Interface字段中放入任何内容.相反,在app delegate的didFinishLaunchingWithOptions:方法中加载顶级控制器,并在那里设置窗口的根控制器.
应用程序启动假定在那里提到的xib有一个文件所有者是UIApplication.(较旧的模板用于执行此操作,一些示例项目仍然可以.)
| 归档时间: |
|
| 查看次数: |
2685 次 |
| 最近记录: |