比如下面例子:

写出第一个iOS的程序,在界面上显示“Hello World”

1.如何新建一个工程

iOS—>Single View Application—>工程名、保存位置

2.运行App

点击三角符号或使用快捷键(Command + R)

快捷键:Command+B 只是编译,不是运行

3.工程的文件组成

4.应用程序是如何运行起来的?

1)main方法

int main(int argc, char * argv[])

{

@autoreleasepool {

return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));

}

}

UIApplicationMain()全局函数,一共做了三件事:

a)根据第三个参数创建应用程序类的实例(nil默认UIApplication 系统默认)

b)根据第四个参数创建应用程序代理类的实例

(Application Delegate代理     自己任意创建的类,遵守了协议才可以成为代理类)

c)启动事件循环

d)在代理类的didFinishLaunchingWithOptions:方法中编写启动程序后的界面创建及显示

5.UIWindow

1)是什么

是界面显示的根本对象,要想出现显示的内容,那么一定是先创建window的实例

2)作用是什么?

是界面要显示的内容的父容器,在window的上面添加其他显示的内容

6.frame

1)是什么

是CGRect类型的结构体

2)描述了控件在父容器中的位置和大小

CGRect{

CGPoint  origin,

CGSize     size

}

CGPoint{

CGFloat  x,

CGFloat y

}

CGSize{

CGFloat width,

CGFloat height

}

3)如何创建结构体的变量?

使用全局函数  xxxMake();

CGRect  —>  CGRectMake(x,y,width,height)

CGPoint -> CGPointMake(x,y);

CGSize  -> CGSizeMake(width,height);

例:

AppDelegate.m

#import "AppDelegate.h"

@implementation AppDelegate

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

{

//应用程序启动后,第一个要执行动作的时机点,可以做第一个要出现的界面的设置

//1.创建window的实例   //读屏幕的大小

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

//2.设置window的背景色

self.window.backgroundColor=[UIColor yellowColor];

//3.创建并添加显示文本信息的标签

UILabel *label = [[UILabel alloc]init];

label.frame = CGRectMake(100, 150, 200, 40);

label.text = @"Hello World";

[self.window addSubview:label];//子试图添加到界面

// 4 设置根控制器

self.window.rootViewController=[ViewController new];

// 5.设置窗口可见(显示)

[self.window makeKeyAndVisible];

return YES;

}

效果如下: 

iOS 开发~UIWindow的更多相关文章

  1. iOS开发——UI精选OC篇&UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍

    UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍 一:UIApplication:单例(关于单例后面的文章中会详细介绍,你现在只要知道 ...

  2. iOS开发UI篇—UIWindow简单介绍

    iOS开发UI篇—UIWindow简单介绍 一.简单介绍 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow iOS程序启动完毕后,创建的第一个视图控件就是UIWi ...

  3. iOS开发系列--通知与消息机制

    概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情.iOS中通知机制又叫消息机制,其包括两类:一类是本地 ...

  4. 【IOS开发笔记03-视图相关】简单计算器的实现

    UIView 经过前几天的快速学习,我们初步了解的IOS开发的一些知识,中间因为拉的太急,忽略了很多基础知识点,这些知识点单独拿出来学习太过枯燥,我们在今后的项目中再逐步补齐,今天我们来学习APP视图 ...

  5. 【IOS开发笔记02】学生管理系统

    端到端的机会 虽然现在身处大公司,但是因为是内部创业团队,产品.native.前端.服务器端全部坐在一起开发,大家很容易做零距离交流,也因为最近内部有一个前端要转岗过来,于是手里的前端任务好像可以抛一 ...

  6. iOS开发系列--无限循环的图片浏览器

    --UIKit之UIScrollView 概述 UIKit框架中有大量的控件供开发者使用,在iOS开发中不仅可以直接使用这些控件还可以在这些控件的基础上进行扩展打造自己的控件.在这个系列中如果每个控件 ...

  7. IOS开发基础知识碎片-导航

    1:IOS开发基础知识--碎片1 a:NSString与NSInteger的互换 b:Objective-c中集合里面不能存放基础类型,比如int string float等,只能把它们转化成对象才可 ...

  8. ios开发中的小技巧

    在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIViewal ...

  9. iOS开发系列--IOS程序开发概览

    概览 终于到了真正接触IOS应用程序的时刻了,之前我们花了很多时间去讨论C语言.ObjC等知识,对于很多朋友而言开发IOS第一天就想直接看到成果,看到可以运行的IOS程序.但是这里我想强调一下,前面的 ...

  10. iOS开发系列--视图切换

    概述 在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单.在iOS开发中常用的视图切换有三种,今天我们将一一介绍: UITabBarController ...

随机推荐

  1. Unable to open log device '/dev/log/main': No such file or directory

    在我们使用真机进行Android应用调试时,无法获得调试信息,错误提示如下:Unable to open log device '/dev/log/main': No such file or dir ...

  2. hdu 1262寻找素数对

    Problem Description 哥德巴赫猜想大家都知道一点吧.我们现在不是想证明这个结论,而是想在程序语言内部能够表示的数集中,任意取出一个偶数,来寻找两个素数,使得其和等于该偶数. 做好了这 ...

  3. hdfs-over-ftp安装与配置

    hdfs-over-ftp是一个开源,简单易用的实现了对HDFS系统的下载和上传功能的小工具.可以作为管理工具来使用,快捷方便. 1 安装jdk(1.6以上版本)并配置环境变量分别执行java -ve ...

  4. shell中的type命令

    type [-aftpP] name [name,...] -a 打印name的所有可能情况,比如type -a ls,会打印ls is aliased to 'ls --color=auto'和ls ...

  5. PAT 65. A+B and C (64bit) (20)

    题目链接:http://pat.zju.edu.cn/contests/pat-a-practise/1065 思路分析: 1)对a+b造成的long long 类型的数据溢出进行特殊处理: a> ...

  6. CSSOM视图模式

    相关技术文章: CSSOM视图模式(CSSOM View Module)相关整理 W3C CSSOM View Module

  7. 视觉差效果 - jqyery scrollTop原理

    原理是用页面的滚动高度scrollTop()来控制背景图的位置 附上源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition ...

  8. wordpress博客搬家心得

    更改SSH的连接端口和登录账户 在SSH的配置文件,/etc/ssh/sshd_config中找到Port 22(一般情况下是22, 根据服务器提供商的设置而不同)更改为你自己希望的端口. 至于登录账 ...

  9. VisualStudio中的编辑后期生成事件

    在visual studio中加入项目文件,也就是引用外部文件,比如在tools\options中的show directions for中选择include files,我们需要引用项目(solut ...

  10. Latch-up 閂鎖效應 & 靜電放電模式

    * * Latch-up 閂鎖效應, 又稱寄生PNPN效應或可控矽整流器 ( SCR, Silicon Controlled Rectifier ) 效應. 在整體矽的CMOS 管下, 不同極性攙雜的 ...