zoukankan      html  css  js  c++  java
  • xcode 4.2及以上 通过 empty application 构建 window base application 方法

    XCode 4 以后,项目模版中没有了 Window-based Application,跟它比较接近的项目模版是 Empty Application. 如下图的选择:

    我们想建一个 Window-based Application,需要在 Empty Application 基础上做一些设置。

    下面是操作步骤,

    新建一个 Empty Application

    默认的 Empty Application 项目包含下面文件

    创建 MainWindow.xib

    新建一个 window类型的xib,命名为:MainWindow.xib, 如下图

    新建好 MainWindow.xib 后

    指定 MainWindow.xib 的 File‘s Owner的所属类为 UIApplication。如下图,

    从Libray中拖动一个 Object 到界面上

    指定刚刚拖入的Object的所属类为 应用的 AppDelegate, 这里是 WBAppAppDelegate,如下图:

    设置好了后,Object 会立即变成 App App Delegate的名字。

    把 MainWindow.xib的 File's Owner 的 delegate 跟 我们刚刚建立的 App App Delegate 建立关联:

    关联的拖动是在 Show the Connections inspector 中的,即最右边的那个

    修改 WBAppAppDelegate.h 文件,把 window 暴露给 xib 文件, 即增加IBOutlet 属性

    修改前代码:

    @property (strong, nonatomic) UIWindow *window;

    修改后代码:

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

    然后需要在.m文件进行如下修改:

    把原来的代码

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

    {

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

        // Override point for customization after application launch.

        self.window.backgroundColor = [UIColorwhiteColor];

        [self.windowmakeKeyAndVisible];

        returnYES;

    }

    修改成以下的形式

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

    {

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

        // Override point for customization after application launch.

        self.window.backgroundColor = [UIColorwhiteColor];

        [self.windowmakeKeyAndVisible];

        returnYES;

    }

    把 App Delegate 的 window 跟界面上的Window捆绑

    设置 应用的主界面

    到此我们就建立了 Window-base Applicaiton。

    为了这里的简单演示,我们这里在 MainWindow.xib 文件上放一个有文字的标签,可以一目了然的看到执行效果:

  • 相关阅读:
    实现centos系统的自动化安装部署
    加密与CA证书的创建
    Linux系统启动和内核管理
    进程,系统性能和计划任务
    第十七周运维作业
    第十六周运维作业
    第十四周运维作业
    第十三周运维作业
    第十二周运维作业
    第十一周运维作业
  • 原文地址:https://www.cnblogs.com/rollrock/p/2777845.html
Copyright © 2011-2022 走看看