ios 入门之Hello World
1.ios系统的概述与构架
ios平台限制
集成开发环境介绍
第一个程序-hello World
应用程序的文件组织
模拟器的常用操作
应用程序的生命周期
CocoaTouch层
UIKit框架:UIKit提供了一些程序运行所必须的关键对象,使得App能够捕获用户输入和在屏幕上显示内容
MapKit:iOS 3.0 引入该框架,该框架提供了一个可被嵌入到应用程序的地图界面
Address Book UI:可以利用该框架写电子邮件,并将其放入到用户的发送箱队列等候发送
Message UI:显示创建或者编辑联系人的标准系统界面
Media层
Quatz Core框架
Media Player框架
Av Foundation框架
Core Graphics框架
Core Serivice层
Foundation框架:为core Foundation框架的许多功能提供oc封装
Core Foundation框架:是一组c语言接口,他们为ios应用程序提供基本数据类型
Core Location框架
其他框架:CFNetwork框架,core Data框架,Core Media框架,Core Telephony框架
2.集成开发环境的介绍
xcode:ios集成开发环境,负责管理应用程序工程
interface builder:可视化的组装用户ui接口的工具(现在先不用)
instruments:内存分析工具,调试工具
iphone simulator:iphone模拟器,但是并不能完全模拟所有功能
ios sdk:ios软件开发工具包
开发方式:
ios的ui控件创建有两种方式:1代码创建 2xib文件创建(也叫nib)
ios:Hello World工程步骤
new project->ios:Empty Application->next->Product Name:HelloWorld,Organization Name:com.zyf,Company identify:com.zyf(公司名称,可以和前面的一样),Class Prefix:(类的前缀,随便填一个就行,如:XYZ),Devices:iPhone,后面的3个都不选。->next->保存的位置->ok
完成之后打开AppDelegate.m,找到-(BOOL)application:...{},这个是程序的入口,在return YES;之前添加自己的代码,也就是Hello World就可以了。
这个时候有两种方法,一种是代码实现Hello World,令一种是使用xib来实现
第一种,使用xib来实现的话:
右键点击AppDelegate.m选择新建->User Interface->View->iPhone->save As:View,Where:HelloWorld->next->出现了一个View.xib的文件,点击这个文件->在左上角的一个框里面选择iPhone 6.0 Simulator->点击Run按钮,等待一会,出现iPhone的模拟器->
然后点击右上角的显示按钮,把xib对应的操作工具,找到Lable,把它拖上android的布局界面,修改位置,添加上HelloWorld,这样xib文件建立完成
下面在程序中添加xib
之后再上面所说的代码处加上如下代码:
NSArray *views = [[NSBundle mainBundel] loadNibNamed:@"View" owner:self option:nil];
[self.window addSubView:[views lastObject]];
这样就好了,点击run就可以了。
第二种,使用代码来实现的话
使用代码的话,就不用前面xib中设置lable的那一部分了,直接在上述所说的地方录入如下代码即可:
UILable *lable =[[UILable alloc] initWithFrame:CGRectMake(320/2.0 -140/2.0,80,140,40)];
lable.text = @"Hello World";
[self.window addSubView:(UIView*)];
ios 入门之Hello World的更多相关文章
- IOS 入门开发之创建标题栏UINavigationBar的使用(二)
IOS 入门开发之创建标题栏UINavigationBar的使用 http://xys289187120.blog.51cto.com/3361352/685746 IOS 开发有关界面的东西 ...
- IOS 入门开发之创建标题栏UINavigationBar的使用
转自:http://xys289187120.blog.51cto.com/3361352/685746 IOS 入门开发之创建标题栏UINavigationBar的使用 IOS 开发有关界面 ...
- iOS入门怎样选择Swift和objective-c
版权声明:本文为博主原创文章,未经博主同意不得转载.博主微信:lofocus https://blog.csdn.net/cuibo1123/article/details/28261795 学oc吧 ...
- iOS入门及ObjC语法
iOS入门:http://www.jonathanhui.com/ios ObjC语法: http://www.jonathanhui.com/objective-c https://github.c ...
- IOS入门之Swift语言(一)
经过不断的努力,小哥也买了台苹果设备,终于可以开始我的IOS之旅了,说来确实令人苦恼,为了学习IOS我这着贫农阶级,省了几个月的零花钱,外加向亲朋好友求救,最终痛下心扉,卖了台MAC pro128G版 ...
- [转载]ios入门篇 -hello Word(1)
温馨提示:,如果您使用移动终端阅读本篇文章,请连接wifi的情况下阅读,里面有大量图片,以免造成您不必要的损失. 潜水博客园很多年,闲来无事,聊一下自己的经历,语文不好(如有什么错别字,请您在下评 ...
- 记录IOS入门的过程
先说点私话.再进入正题吧,顺便抒发下情绪.公司传统业务不景气,而互联网正如火如荼,无奈被逼上梁山.開始学起了IOS编程.后来想想闲着也是闲着就学习学习呗.无奈公司确实不希望投入了.不愿意提供苹果电脑. ...
- ios入门OC_UI晋级学什么?
1. OC 语法初步, 你可能学到面向对象最近本的概念, 并且可以大致的建立几个自以为是的类,但这仅仅是开始. 你知道为什么面向对象要有3大特性么.知道他们是用到什么设计模式的么 2. 你可能学到了N ...
- ios入门篇 -hello Word(1)
温馨提示:,如果您使用移动终端阅读本篇文章,请连接wifi的情况下阅读,里面有大量图片,以免造成您不必要的损失. 潜水博客园很多年,闲来无事,聊一下自己的经历,语文不好(如有什么错别字,请您在下评 ...
- IOS入门之创建视图和控件绑定
学习IOS几天了,跟着教程做了两个小应用了,现在先来总结一下.今天就是创建视图和绑带到代码了.其实就是常见的MVC模式实现. 使用的Xcode版本是8.2. 在Xcode创建项目之后,默认就会创建一个 ...
随机推荐
- CentOS下防火墙的基本操作命令
CentOS 配置防火墙操作实例(启.停.开.闭端口): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service iptables status< ...
- 网站资料收集 主要查看js的学习部分
1.Asp.Net MVC3.0基本的简单的可能都会用,更深入的使用还需加深研究,之后希望对MVC4.0和5.0进行对比学习,暂时看到@葡萄城控件技术团队博客的MVC5系列正在继续http://www ...
- 新功能:Azure 负载平衡器的空闲超时现可配置了
Yves Pitsch Azure 网络首席项目经理 我们很高兴地宣布,Azure负载平衡器现在可以为云服务和虚拟机提供可配置的 TCP空闲超时支持.要配置此功能,可以使用服务管理 API.Power ...
- java中正则表达式
在<java编程思想>中,java中的 \\ 表示“我要插入一个正则表达式的反斜线,所以其后的字符具有特殊的意义.”如果想插入一个普通的反斜线,那么应该使用 \\\\. 理解: 我们使用的 ...
- 别做操之过急的”无效将军”,做实实在在的”日拱一卒” zz
别做操之过急的”无效将军”,做实实在在的”日拱一卒” 前天在网上看到一句话很不错,拿来和大家分享,同时用我的“大叔”三观来解读这句话. 这句话是:“我们不需要操之过急的”无效将军”,我们需要实实在在的 ...
- 设计模式_Proxy_代理模式
形象例子: 跟MM在网上聊天,一开头总是“hi,你好”,“你从哪儿来呀?”“你多大了?”“身高多少呀?”这些话,真烦人,写个程序做为我的Proxy吧,凡是接收到这些话都设置好了自动的回答,接收到其他的 ...
- shell管道和重定向
看了前面一节:linux shell数据重定向(输入重定向与输出重定向)详细分析 估计还有一些朋友是头晕晕的,好复杂的重定向了.这次我们看下管道命令了.shell管道,可以说用法就简单多了. 管道命令 ...
- Algorithm: quick sort implemented in python 算法导论 快速排序
import random def partition(A, lo, hi): pivot_index = random.randint(lo, hi) pivot = A[pivot_index] ...
- java@ What are C++ features missing in Java
Following features of C++ are not there in Java. No pointers No sizeof operator No scope resolution ...
- 家庭局域网接入Internet
接入Internet 建立宽带连接 步骤一:单击"网络",再属性 步骤二:单击"更改适配器设置" 步骤三:选择"宽带连接" 步骤四:输入 ...