下载源码

技术要点:

1. 启动XCODE开始开发

2. IOS项目文件结构分析

3. 添加视图label组件

4. 程序的入口以及启动流程

5. 源码详细的中文注释

......

详细介绍:

1. 启动XCODE开始开发

(1) 启动Xcode开发环境
       打开Finder,在磁盘上的“Developer”目录中“Applications”目录中,有Xcode程序,双击Xcode图标,即可启动

(2) 打开Xcode后,选择“Create a New Xcode project”或者通过FileàNew Project创建一个项目

(3) xcode中的工程分为两大类,一是IOS(iPhone/iPad),二是Mac OS X(Mac Pc)
       在IOS类别中选中“Application”,然后选择"View-based Application"工程模板
     
       Navigation-based Application:  基于导航模式的工程模板
       OpenGL ES Application: 基于OpenGL模式的工程模板
       Tab Bar Application: 基于Tab Bar的工程模板
       Utility Application: 很少用到,可以不了解
       View-based Applicatio: 基于单视图的工程模板
       Window-based Application,创建一个空白工程

(4) 创建工程设置说明
 
       Product Name:即工程生产的产品(iPhone应用程序)的名称
       Company identifier:com.zyg.ios,用于应用程序包名称
       Bundle Identifier:Company identifier Product Name
       Class Prefix:工程生成的类名称都会加上这里填写的前缀
       Device Family:工程对应的设备类型,iPhone或者iPad    
       Use Storyboards:是否使用故事板 不要选中
       Use Automatic Reference Counting:自动引用计数,选中后内存释放工作就不需要自己处理
       Include Unit Tests:是否包含单元测试
  
  (5) 保存项目

2. IOS项目文件结构分析

  

HelloWorld: 逻辑目录
         HelloWorldAppDelegate.h: 代理类头文件
         HelloWorldAppDelegate.m: 代理类源文件
         HelloWorldViewController.h: 视图控制器类头文件
         HelloWorldViewController.m: 视图控制器类源文件
         HelloWorldViewController.xib: 包含用户接口相关的组件
    Supporing Files: 一般都是存放资源文件
         HelloWorld-Info.plist: 包含工程信息的属性列表
        InfoPlist.strings: 应用程序国际化用到,包含多国语言翻译
        main.m: 包含iPhone应用程序入口函数main,一般不需要我们做任何修改
        HelloWorld-Prefix.pch: 包含一些头文件列表
    Frameworks:引入的系统框架,默认引入
        UIKit.framework: ios的UI组件类库
        Foundation.framework: ios基础类库
        CoreGraphics.framework: 2D绘图类库
    Products: 包含工程编译后生产的产品HelloWorld.app

3. 添加视图label组件
    (1) 单击打开该文件HelloWorldViewController.xib文件
    (2) 在xcode右下角找到label组件(可以在搜索框中输入label快速定位该组件)
    (3) 拖动该组件到空白view上,拖动过程中会出现水平、垂直对齐蓝线,使label水平、垂直居中与label中
    (4) 双击该lable,输入“Hello World”
     

4. 程序的入口以及启动流程
    (1) 在main.m中的main函数中,该函数调用了UIApplicationMain,且最后一个参数用到了HelloWorldAppDelegate,故调用了 HelloWorldAppDelegate类
   
    (2) HelloWorldAppDelegate.m中didFinishLaunchingWithOptions方法中又初始化了视图控制器HelloWorldViewController,初始化参数中用到了@"HelloWorldViewController",其实就是HelloWorldViewController.xib
           
   (3) HelloWorldViewController.xib包含了用户接口组件,所以视图控制器HelloWorldViewController初始化完毕后,UI组件就展示在view上

运行效果:

按住Command(简称Cmd) B编译工程,然后Cmd R(或者点击编译运行图标),运行工程

精品教程--IOS零基础开发环境搭建的更多相关文章

  1. Centos 基础开发环境搭建之Maven私服nexus

    hmaster 安装nexus及启动方式 /usr/local/nexus-2.6.3-01/bin ./nexus status Centos 基础开发环境搭建之Maven私服nexus . 软件  ...

  2. Unix/Linux环境C编程入门教程(17) Gentoo LinuxCCPP开发环境搭建

    1. Gentoo Linux是一套通用的.快捷的.完全免费的Linux发行,它面向开发人员和网络职业人员.与其他发行不同的是,Gentoo Linux拥有一套先进的包管理系统叫作Portage.在B ...

  3. Unix/Linux环境C编程入门教程(9) unbntu CCPP开发环境搭建

    1.      首先启动VMware,如果没有安装,请查看前面VMware的安装视频 2 启动虚拟机向导,选择自定义 3 单击下一步 4 选择稍后安装操作系统 5 .选择unbntu 64linux ...

  4. Angular入门到精通系列教程(4)- 开发环境搭建以及入手项目

    1. 本地开发环境搭建 1.1. node.js 1.2. Angular CLI 2. 开发工具 - Visual Studio Code 第一个Anuglar项目 创建第一个anuglar项目 A ...

  5. iOS项目——项目开发环境搭建

    在开发项目之前,我们需要做一些准备工作,了解iOS扩展--Objective-C开发编程规范是进行开发的必备基础,学习iOS学习--Xcode9上传项目到GitHub是我们进行版本控制和代码管理的选择 ...

  6. CC++初学者编程教程(1) Visual Stduio2010开发环境搭建

    Visual Studio是微软公司推出的开发环境.是目前最流行的Windows平台应用程序开发环境. Visual Studio 2010版本于2010年4月12日上市,其集成开发环境(IDE)的界 ...

  7. Unix/Linux环境C编程入门教程(14) Mandriva LinuxCCPP开发环境搭建

    1. Mandriva是目前全球最优秀的Linux发行版之一,稳居于linux排行榜第一梯队. Mandriva公司现在仍然是 这个时候mandriva Linux系统安装完成,基于Mandriva的 ...

  8. 1. ReactJS基础(开发环境搭建)

    本文主要介绍通过React官方提供的create-react-app脚手架进行开发环境的搭建. 1.安装node环境(安装过程这里不做介绍,可参考其他博文) 在cmd中输入node -v 如果可以看到 ...

  9. Flutter入门教程(二)开发环境搭建

    学习Flutter,首先需要搭建好Flutter的开发环境,下面我将一步步带领大家搭建开发环境并且成功运行flutter项目. Flutter环境配置主要有这几点: 系统配置要求 Java环境 Flu ...

随机推荐

  1. Ubuntu安装PostgreSQl

    warrior@pc:~$ sudo apt-get install postgresql-xx-xx #可以使用Tab键进行代码补全 warrior@pc:~$ sudo su postgres # ...

  2. 王家林的“云计算分布式大数据Hadoop实战高手之路---从零开始”的第十一讲Hadoop图文训练课程:MapReduce的原理机制和流程图剖析

    这一讲我们主要剖析MapReduce的原理机制和流程. “云计算分布式大数据Hadoop实战高手之路”之完整发布目录 云计算分布式大数据实战技术Hadoop交流群:312494188,每天都会在群中发 ...

  3. js_sl 延迟菜单

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  4. What are some good resources for learning about Artificial Neural Networks

    http://stackoverflow.com/questions/478947/what-are-some-good-resources-for-learning-about-artificial ...

  5. 【转】XML之命名空间的作用(xmlns)

    原文链接:http://blog.csdn.net/zhch152/article/details/8191377 命名空间的作用,下面的内容是转载的,大家可以看看:   问题的出现:XML的元素名字 ...

  6. js闭包测试

    本文的诞生,源自近期打算做的一个关于javascript中的闭包的专题,由于需要解析闭包对垃圾回收的影响,特此针对不同的javascript引擎,做了相关的测试. 为了能从本文中得到需要的知识,看本文 ...

  7. jfinal的ajax例子

    @(编程) 简介 JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful. 在拥有Java语言所有 ...

  8. keil中如何得知所编译程序所占空间大小?

    keil编译后出现Program Size: data=21.0 xdata=0 code=2231. 这表明 data= 21.0  数据储存器内部RAM占用21字节, xdata=0     数据 ...

  9. 如何在C#中模拟C++的联合(Union)?[C#, C++] How To Simulate C++ Union In C#?

    1 什么是联合? 联合(Union)是一种特殊的类,一个联合中的数据成员在内存中的存储是互相重叠的.每个数据成员都在相同的内存地址开始.分配给联合的存储区数量是“要包含它最大的数据成员”所需的内存数. ...

  10. HeapAlloc、GlobalAlloc和new等内存分配有什么区别么?

    查找了一些 new , GlobalAlloc, HeapAlloc分配内存方式的区别. 转了一些资料 //============================================== ...