Jov*_*van 3 iphone ios xcode4.2
我正在创建一个没有nib文件的ios应用程序,并希望在应用程序委托中初始化窗口,如下所示:
CGRect screenBounds = [[UIScreen mainScreen] bounds];
self.window = [[[UIWindow alloc] initWithFrame:screenBounds] autorelease];
self.window.backgroundColor = [UIColor greenColor];
NSLog(@"%@", self.window.bounds);
Run Code Online (Sandbox Code Playgroud)
窗口出现,我可以看到我定义的绿色.当我调试self.window时,我会看到我刚刚定义的帧的边界,但是当我想访问bounds属性时,它返回null.与框架相同.有什么不同?
当我想要接下来初始化视图时,它将无法工作,因为未定义框架/边界来初始化该视图:
// create root view
RootView* rootView = [[[RootView alloc] initWithFrame:self.window.bounds] autorelease];
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
是的,这不会起作用
NSLog(@"%@", self.window.bounds);
Run Code Online (Sandbox Code Playgroud)
窗口的边界不是对象,因此%@不能用于显示它:)
尝试将其CGRect转换为NSString *第一个:
NSLog(@"%@", NSStringFromCGRect(self.window.bounds));
Run Code Online (Sandbox Code Playgroud)
这应该会给你一些调试信息,以帮助你解决问题:)
NB%@只是调用description对象并显示它.
| 归档时间: |
|
| 查看次数: |
4790 次 |
| 最近记录: |