内容大纲:(红色表示博主个人重点记忆)

1、指定启动界面 带箭头就是首次启动的页面
2、两个常用的快捷键
3、拖线子控件注意事项
4、一般情况下,UIView的容器是控制器的View。
5、didReciveMemoryWaring方法和loadDidLoad方法.
6、View常见的方法。
7、新建工程相关一览。
8、项目文件一览。
9、UI控件的内存管理
10、关于Tag和自定义引用指针
11、OC语言:对象的结构体属性是不允许直接修改内部的变量的
12、常见错误。

IOS--UI基础 时间:2015.11.13

说在前面:此部分IOS-UI是博主已经有一定基础之后,在新的学习中遇到的之前没有掌握的知识,所以零基础的读者可以略读或者飘过。

相关的思维导图:

1、指定启动界面 带箭头就是首次启动的页面 (下面是新建Mac的带UI的工程,不是IOS的工程哦)

2、两个常用的快捷键

Xcode相关的快捷键
调出代码:command+option+回车
退出代码:command+回车

3、一般情况 控件引用是用weak,一般很多空间比如UIButton或者UITextView控件都是作为子控件添加到父控件View中的,当作为View父控件的子控件之后,就会被强引用,所以代码为这个子控件的实例对象添加的引用是不需要再一次用strong修饰的。

总之:一般控件引用指针都是用weak修饰符修饰不要用strong修饰。
另外控件托线拖入一般都是拖在.h文件中的。

4、一般情况下,UIView的容器是控制器的View。

5、内存警告调用的方法是

didReciveMemoryWaring

控制器加载好厚,系统调用的方法是

loadDidLoad

6、View常见的方法:

7、新建工程相关一览:

8、项目文件一览:

9、UI控件的内存管理

10、关于Tag和自定义引用指针

因为:1、当项目子控件多的时候,使用tag可能会理不清子控件。2、通过tag找出对应的空间效率非常低。

所以建议:使用自定义属性引用指针去指向需要用到的子控件,而且一般子控件属性修饰符是用weak。

11、OC语言:对象的结构体属性是不允许直接修改内部的变量的

//self.btn.frame.origin.x = 20;是会报错的
CGRect frame = self.btn.frame;
frame.orgin.x = 20;
self.btn.frame = frame;
 12、常见错误:
 错误一:
reason: '[<ViewController 0x7fd1086147c0> setValue:forUndefinedKey:]:
this class is not key value coding-compliant for the key label.'

forUndefinedKey就是找不到key属性,也就是说属性删了。

 错误二:
reason: '-[ViewController greenBtnClick]: unrecognized selector sent to
instance 0x7ffd117115f0'
*** First throw call stack:

组件找不到响应的方法。

 
 
 
 
 

IOS的UI基础01的更多相关文章

  1. iOS开发UI基础—手写控件,frame,center和bounds属性

    iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...

  2. IOS开发UI基础--数据刷新

    IOS开发UI基础--数据刷新 cell的数据刷新包括下面几个方面 加入数据 删除数据 更改数据 全局刷新方法(最经常使用) [self.tableView reloadData]; // 屏幕上的全 ...

  3. iOS开发-UI基础Demo

    现在更多的学习资料都是xCode4.X的,发现xCode6.1还是很多东西,如果有正在学习iOS开发的可以通过Demo简单了解下iOS的UI开发~ 1.新建单视图文件: 2.新建项目名称,语言选择OC ...

  4. iOS学习——UI基础UIButton(七)

    前面写了UIWindow.UIViewController,那些都是一些框架,框架需要填充上具体的view才能组成我们的应用,移动应用开发中UI占了很大一部分,最基础的UI实现是使用系统提供的各种控件 ...

  5. iOS开发——UI基础-屏幕适配

    一.适配 1.什么是适配?适应.兼容各种不同的情况 2.移动开发中,适配的常见种类 2.1系统适配 针对不同版本的操作系统进行适配 2.2屏幕适配 针对不同大小的屏幕尺寸进行适配 二.点和像素 1.在 ...

  6. iOS开发——UI基础-控制器,IBAction和IBOutlet,UIView

    第一个ios程序 @interface ViewController : UIViewController @property(nonatomic, weak)IBOutlet UILabel *la ...

  7. IOS开发UI基础之Plis文件-字典转模型

    什么是plist文件? 在开发中直接将数据写在代码里面 不是一种合理的做法 如果数据经常改变 就需要经常翻开对应的代码进行修改 造成代码扩展性低 因此,可以考虑将经常变的数据放在⽂文件中进⾏行存储,程 ...

  8. IOS开发UI基础之UIButton

    什么是按钮?

  9. IOS开发UI基础UIView

    主要介绍下UIView得基本概念和一些属性的介绍至于属性的用户后面会由详细的介绍 -.UIView基本概念 1.什么是控件? 屏幕上所有的UI元素都叫做控件 (也有很多书中叫做视图 组件) 比如 按钮 ...

随机推荐

  1. 左倾堆(二)之 C++的实现

    概要 上一章介绍了左倾堆的基本概念,并通过C语言实现了左倾堆.本章是左倾堆的C++实现. 目录1. 左倾堆的介绍2. 左倾堆的图文解析3. 左倾堆的C++实现(完整源码)4. 左倾堆的C++测试程序 ...

  2. js 实现各种排序

    一 冒泡排序 一万个随机数排序五次执行时间分别为 362 389 361 372 408 毫秒 var arr=[]; for(var j=0;j<10000;j++){ arr.push(Ma ...

  3. Android 学习笔记之网络通信基础+WebView....

    PS:加快学习进度...下周一完成Android网络通信...然后正式进入实战... 学习内容: 1.Android中Http基础... 2.Android中的Socket基础... 3.Androi ...

  4. .NET框架面向对象分层的个人想理

    简单.层次清晰不要过度优化,接口这玩意儿就是个双刃剑,玩好了解藕,玩不好自找麻烦,好的代码永远都是傻瓜都能看懂的. 总结成以下几条: 公用层 代码公用并且与第三方DLL和业务逻辑无关的 独立出来 逻辑 ...

  5. [转]AutoResetEvent 与 ManualResetEvent区别

    在C#多线程编程中,这两个类几乎是不可或缺的,他们的用法/声明都很类似,那么区别在哪里了? Set方法将信号置为发送状态 Reset方法将信号置为不发送状态 WaitOne等待信号的发送 其实,从名字 ...

  6. 实现java 中 list集合中有几十万条数据,每100条为一组取出

    解决"java 中 list集合中有几十万条数据,每100条为一组取出来如何实现,求代码!!!"的问题. 具体解决方案如下: /** * 实现java 中 list集合中有几十万条 ...

  7. 安装 Oracle P6 EPPM 16 R1 database for 12C A

  8. Installation and Upgrading

    Cumulative Feature Overview Identifies product features available to you when upgrading. This tool r ...

  9. C#中CookieContainer获取里面cookie值异常:InvokeMember("m_domainTable") FieldAccessException

    1.可能是主机提供商的 安全问题. Their hosts works in medium trustsecurity, and ASProxy needs a full trust security ...

  10. Ext.NET 4.1.0 GridPanel数据分页

    针对大量数据在前端展示,需要进行分页显示,这里我使用的数据量为100万,数据存储在MongoDb中(也可以存储在本地文件或其它数据库中).最终显示效果如下: 步骤如下: 1.新建程序并配置,详见htt ...