xcode4.2 空项目如何加载view

来源:互联网 发布:excel筛选出相同数据 编辑:程序博客网 时间:2024/05/02 10:32

这个是网上看到的一个论坛上的回答,希望对大家有所帮助,具体是哪的忘记了

“FYI, I am very newbie in iPhone development.”

I had upgraded Xcode to 4.2 beta 4 and realised that there is no more templates for iOS 4.
Obviously, it did not include iOS 4 SDK because it said “with iOS 5 SDK”, duh!
I could not go back to Xcode beta 3 since I upgraded my iPhone to beta 4 as well.

Anyway…

In the tutorial that I am learning at the moment, it requires “Window-based application”.
Xcode 4.2 beta 4 does not have “window-based application”; so, I created a project with “Empty application”.
Unfortunately, “Empty application” has no longer “MainWindow.xib”, which tutorial teacher said to modify something in it.
So, I googled to make “MainWindow.xib” visible and found this article.

“MainWindow.xib” posted by Jeroen Trappers

What he said is that “MainWindow.xib” is not included by default in templates. He suggested to create “MainWindow.xib” manually as below:
(FYI, this instruction is only for me. It is better to go to original article and follow.)

1. Create new project in Xcode 4.2 beta and choose “Empty Application” template
2. Add “New File” to the project by choosing “iOS -> User Interface -> Empty”
3. Choose “iPhone” and name “MainWindow” (.xib will be added automatically)

4. Open “MainWindow.xib” in project navigator
5. Click “File’s Owner” in “Placeholders”
Change Class as “UIApplication” in “Identity Inspector”
6. Drag “Object” in the library into “Objects” panel on the left
7. Change the class of the Object as your delegate class, such as “DemoAppDelegate”
(The name of object will be automatically change like “Demo App Delegate”)
8. Drag “Window” in the library into “Objects” panel on the left

9. Open “DemoAppDelegate.h” in project navigator
10. Find below code

@interface DemoAppDelegate :

UIResponder

@property (strong, nonatomic)UIWindow *window;

@end

11. Change as below:

@interface DemoAppDelegate :

UIResponder

@property (strong, nonatomic) IBOutlet UIWindow *window;

@end

11. Open “MainWindow.xib” in project navigator
12. Click “File’s Owner” in “Placeholders”
13. Control-Drag “delegate” of “Outlets” in “Connections Inspector” to “Demo App Delegate” in “Objects”
14. Click “Demo App Delgate” in “Objects”
15. Control-Drage “window” of “Outlets” in “Connections Inspector” to “Window” in “Objects”

16. Open “Summary” of your project
17. Find “iPhone / iPod Deployment Info”
18. Change “Main Interface” as “MainWindow”

19. Open “DemoAppDelegate.m” in project navigator
20. Find below code

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

// Override point for customization after application launch.

self.window.backgroundColor = [UIColor whiteColor];

[self.window makeKeyAndVisible];

return YES;

}

21. Change as below

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

//self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

// Override point for customization after application launch.

//self.window.backgroundColor = [UIColor whiteColor];

[self.window makeKeyAndVisible];

return YES;

}

在XCode4.2中添加MainWindow.xib文件

最近把XCode升级到了最新的4.2版本,然后在创建项目时,发现创建的Winzard改了,没有了以前的Window Based Application了,要创建一个干净点的项目该选用的模板是"Empty Project"。但是创建完之后,项目中不再有MainWindow.xib文件了,不过我们可以自己添加这个文件。

首先,选择添加文件,Cmd+N,然后选择 iOS->User Interface->Empty, Device选择iPhone, 把文件命名为MainWindow。

MainWindow

首先, 把File's Owner改为UIApplication.

UIApp

然后再从Library中, 添加一个Object,并把Object的Class改为你自己的AppDelegate。

delegate

再从Library中添加一个Window对象,

window.png

 

好了,需要的元素都齐了,最后需要把他们链接起来。

1. 把你的AppDelegate中的UIWindow标记为IBOutlet

2. 把MainWindow.xib的FileOwner的delegate设置为你的Demo App Delegate.

3. 把Window和你AppDelegate中的Outlet关联起来。

delegate

4. 把项目Summary属性下的Main Interface设置为MainWindow, 同时把appDidLaunchWithOptions中的UIWindow初始化代码删除。



原创粉丝点击