对于非常多刚開始学习的人来说,肯定希望自己尝试不用傻瓜的“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. Ansible@一个高效的配置管理工具--Ansible configure management--翻译(八)

    如无书面授权,请勿转载 第四章,大型项目中Ansible的使用 Roles If your playbooks start expanding beyond what includes can hel ...

  2. HDU ACM 2586 How far away ?LCA-&gt;并查集+Tarjan(离线)算法

    题意:一个村子有n个房子,他们用n-1条路连接起来,每两个房子之间的距离为w.有m次询问,每次询问房子a,b之间的距离是多少. 分析:近期公共祖先问题,建一棵树,求出每一点i到树根的距离d[i],每次 ...

  3. zoj3822 期望dp

    每天在一个n*m的棋盘上放棋子,问使得每一行,每一列都有棋子的期望天数 dp[n][m][k] 表示用k个棋子占据了n行,m列,距离目标状态还需要的期望天数 那么dp[n][m][k] = p1 * ...

  4. Android定义自己的面板共享系统

    在Android分享知道有一个更方便的方法.调用的共享面板来分享我们的应用程序的系统.主要实现例如,下面的: public Intent getShareIntent(){ Intent intent ...

  5. STL algorithm算法minmax,minmax_element(36)

    minmax原型: std::minmax C++11 C++14 default (1) template <class T> pair <const T&,const T ...

  6. IOS加强知识(1)理解力Objective-C

    一直想写一般Objective-C帖子,总是没时间.所以,我希望有一个巨大的知识更小.温馨提示小的变化.写一点点,每天.东西把他们的学习分享,好了废话不多. 1.一门动态的语言OC Object-C( ...

  7. lua简洁的功能(两)

    Lua中的函数带有词法定界的第一类值. 第一类值: 在Lua中,函数和其它值(数值,字符串)一样,函数能够被存放在变量中,也存放在表中, 能够作为函数的參数,还能够作为函数的返回值. 词法定界:被嵌套 ...

  8. android应用开发--------------看RadioGroup源代码,写相似单选选项卡的集成控件(如底部导航,tab等等)

    博客为 有时个哥 原创.如需转载请标明出处:http://blog.csdn.net/ls703/article/details/46694967 watermark/2/text/aHR0cDovL ...

  9. 关闭 sqlserver提示信息

  10. error C2248: “CObject::operator =”: 不可访问 private 员(于“CObject”类声明)

    MFC如果编码错误: 演出:error C2248: "CObject::operator =": 不可访问 private 员(于"CObject"类声明) ...