对于非常多刚開始学习的人来说,肯定希望自己尝试不用傻瓜的“Single View Application”模板创建一个含有View的窗体。而是希望能从零開始,先建一个空的框架。然后逐渐向里面加入View。但遗憾的是 XCODE4.6既没有在開始向导中包括4.0版本号的“Window-Based Application”选项,也没有直接加入UIViewController subclass模板的选项,所以在非常多之前的书籍中介绍的方法都不适用。让刚開始学习的人无所适从。事实上,在4.6版本号中创建从零開始的窗体更简单。

1.新建一个Empty Application.没有比这更能简化的版本号了。接下来的选项中Product Name命名为WindowBasedApp,Class Profix命名为WBA,例如以下图所看到的:

2.鼠标停在项目上,右键new file

创建一个View Controller。为此,先新建一个普通类。如图,选择Objective-C Class:

3.点击“Next”,在接着出现的界面中。将新类命名为myViewController。同一时候注意选取Subclass为ViewController,而不是NSObject。选中With XIB for user Interface。当然。假设你想更绝的,连xib也自己又一次建立。那也能够。后面将介绍方法。

4.如今。你的项目应该例如以下图所看到的。

注意,为了測试能否打开你的View,在view中增加了一个Label。

5.执行一下模拟器。其实。你会发现你加入的label并未出现。

6.打开WBAAppDelegate.h,加入例如以下内容:myAppViewController.h依据自己的命名文件来写。报错会有人性化的提示

#import "myAppViewController.h"

@property (nonatomic,retain)
 myAppViewController *viewController;

如图:

7.打开WBAAppDelegate.m,加入例如以下3行。详细位置如图:

@synthesize viewController;

self.viewController =
[[myAppViewController alloc]initWithNibName:@"myViewController"bundle:nil];

[self.window addSubview:viewController.view];

解释一下。加入的第二行为加入一个viewcontroller实例。这一句非常重要。由于之前仅仅是建立一个viewcontroller类。该行建立一个和xib文件关联的实例。

加入的第三行向窗体加入控制器的视图。

8.执行,成功!

 

假设第3步没有选择包括xib,则须要在做完上述步骤后,再完毕例如以下操作(BTW:假设已经选择了,又不想重做,能够删除xib文件)

9.加入User Interface 这次选View,如图:

10. 起一个名字,如myViewController,如图

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWlhbnF1YW4wMDM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

11.你将加入一个xib文件myViewController.xib(当然另一个View)。为了測试是否成功,在View中加入一个了Lable,如图:

12.当然这还不算成功。还未将Controller与View关联起来。

先选择这个xib的File's Owner图标,然后在其Identity Inspector中,将其基类由NSObject 改为 myViewController,这个类是你自己建立的了。如图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWlhbnF1YW4wMDM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

13.按住Control键,拖动File's Owner图标到View图标上,在弹出的Outlet面板中。选中View为其输出口(Outlet)。

14.搞定!

又一次执行,显示Lable。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcWlhbnF1YW4wMDM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

版权声明:本文博主原创文章,博客,未经同意不得转载。

XCODE4.6创建我的第一次ios规划:hello的更多相关文章

  1. 创建了一个基于最短路径规划geoserver的wms服务

    两点之间的文章书面请求随机最短路径sql功能,这篇文章是关于如何将上述到系统中的子功能. 1.geoserver登录 首先单击geoserver安装路径下的start Geoserver 待geose ...

  2. [Apple开发者帐户帮助]八、管理档案(2)创建临时配置文件(iOS,tvOS,watchOS)

    创建临时配置文件以在设备上运行您的应用程序而无需Xcode.在开始之前,您需要一个App ID,一个分发证书和多个注册设备. 有关完整的临时配置文件工作流程,请转到Xcode帮助中的分发到已注册设备( ...

  3. windows创建p12格式的ios开发证书的流程

    现在做ios开发,原生的开发已经不是第一选择,现在有很多不同的H5开发框架,在性能上都不输原生开发,而UI方便却能做得比原生更炫,比如CSS得灵活度肯定是比原生开发出来得应用更灵活的. 我们在开发IO ...

  4. 我的第一次windows规划

    #include <windows.h>   LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; //WinMain功能被分配一 ...

  5. iOS开发——创建你自己的Framework

    如果你想将你开发的控件与别人分享,一种方法是直接提供源代码文件.然而,这种方法并不是很优雅.它会暴露所有的实现细节,而这些实现你可能并不想开源出来.此外,开发者也可能并不想看到你的所有代码,因为他们可 ...

  6. iOS静态库及Framework 创建

    本文转自cocoachina,尊重作者的汗水. 讲述的非常透彻,有需要的朋友可以阅读实践.转载请注明出处 //=================以下留着备份==================// 在 ...

  7. iOS - 静态库的创建与使用

    在日常项目开发中,不论是为了两个公司项目上的业务交流还是为了减少项目的编译时间,有的时候我们会把项目中的私密内容打包成静态库,或者是把项目中变动较少一部分打包成静态库以便提高编译效率,那么下面我们就来 ...

  8. iOS开发UI篇—控制器的创建

    iOS开发UI篇—控制器的创建 说明:控制器有三种创建方式,下面一一进行说明. 一.第一种创建方式(使用代码直接创建) 1.创建一个空的IOS项目. 2.为项目添加一个控制器类. 3.直接在代理方法中 ...

  9. iOS 中 .a 和 .framework 静态库的创建与 .bundle 资源包的使用

    iOS 中 .a 和 .framework 静态库的创建与 .bundle 资源包的使用 前言 开发中经常使用三方库去实现某特定功能,而这些三方库通常又分为开源库和闭源库.开源库可以直接拿到源码,和自 ...

随机推荐

  1. 多线程之join方法

    join方法的功能就是使异步执行的线程变成同步执行.也就是说,当调用线程实例的start方法后,这个方法会立即返回,如果在调用start方法后后需要使用一个由这个线程计算得到的值,就必须使用join方 ...

  2. String ,StringBuffer,StringBuilder精髓比較

    1. 在运行速度方面的比較:StringBuilder > StringBuffer > String 2. StringBuffer与StringBuilder.他们是字符串变量,是可改 ...

  3. Reset and clock control (RCC) STM32L

    Reset: 1.系统复位:A system reset sets all registers to their reset values except for the RTC, RTC backup ...

  4. Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发

    原文 Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发 前言 在前一篇教学中, 我们学会如何使用Visual Studio 搭配Xcode 进行iOS基本控 ...

  5. windows phone 加速计(5)

    原文:windows phone 加速计(5) 在windows phone 中存在着加速计,我们可以利用加速计获得用户手机的状态,根据手机状态调整我们的程序,这样会更人性化:windows phon ...

  6. UVa 442 Matrix Chain Multiplication(矩阵链,模拟栈)

    意甲冠军  由于矩阵乘法计算链表达的数量,需要的计算  后的电流等于行的矩阵的矩阵的列数  他们乘足够的人才  非法输出error 输入是严格合法的  即使仅仅有两个相乘也会用括号括起来  并且括号中 ...

  7. EJB_消息驱动发展bean

    消息驱动发展bean Java信息服务(Java MessageService) Java 信息服务(Java Message Service,简称 JMS)是用于訪问企业消息系统的开发商中立的API ...

  8. 【Web优化】Yslow优化法则(四)启用Gzip压缩

    Yslow的第4个经验法则指出:启用gzip压缩功能,能够降低HTTP传输的数据和时间,从而降低client请求的响应时间. 本篇是Yslow法则的第四个,主要包含三个方面的内容: 1.      什 ...

  9. Quartz CronTrigger应用

    CronTrigger配置格式: 格式: [第二] [支] [小时] [日本] [月] [周] [年]  序号 说明  是否必填  同意填写的值 同意的通配符  1  秒  是  0-59    , ...

  10. flex4 一些项目使用的技术

    <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="ht ...