iOS中的UI

• 不管你是学习android开发还是iOS开发
• 都建议先学习UI,原因如下:
UI是app的根基:⼀一个app应该是先有UI界⾯面,然后在UI的基础上增加实⽤用功能
UI相对简单易学:UI普遍是学习过程中最简单的⼀一块,能快速拥有成就感和学习兴趣
UI⾄至关重要:开发中的绝⼤大部分时间都在处理UI
万物皆对象
图片对象~~UIImageView
文本标签对象~~UILabel
按钮对象~~UIButton
~~~~~~~~~~~~~
非UI的功能怎么办呢
~~~框架来解决
UIKit - 创建和管理应⽤用程序的⽤用户界⾯面
➢ QuartzCore -提供动画特效以及通过硬件进⾏行渲染的能⼒力
➢ CoreGraphics -提供2D绘制的基于C的API
➢ CoreLocation -使⽤用GPS和WIFI获取位置信息
➢ MapKit -为应⽤用程序提供内嵌地图的接
➢ AVFoundation – ⾳音频处理
➢ 。。。。。。
利用UIKit框架提供的类来创建各种可视化组件对象,最后组成复杂⽽而美观的UI界⾯面
可能用得上的UI控件
• 为了便于开发者打造各式各样的优秀app,UIKit框架提供了非常多功能强大又易用的UI控件
• 下面列举一些在开发中可能用得上的UI控件(红色表明最常用,蓝色代表一般,黑色代表几乎不
用)
➢ UIButton 按钮
➢ UILabel 文本标签
➢ UITextField 文本输入框
➢ UIImageView 图片显示
➢ UIProgressView 进度条
➢ UISlider 滑块
➢ UISwitch 开关
➢ UISegmentControl 选项卡
➢ UIActivityIndicator 圈圈
➢ UIAlertView 对话框(中间弹框)
➢ UIScrollView 滚动的控件
➢ UIPageControl 分页控件
➢ UITextView 能滚动的文字显示控件
➢ UITableView 表格
➢ UICollectionView 九宫格
➢ UIPickerView 选择器
➢ UIDatePicker 日期选择器
➢ UIWebView 网页显示控件
➢ UIToolbar 工具条
➢ UINavigationBar导航条
➢ UIActionSheet 底部弹框
千万别一口气去百度所有的控件,没有这个必要一口气学完所有的控件,原因如下:
有些控件可能一年用不到1次,用到时再学 iOS中控件的用法都是相似相通的,
因此掌握最主要、最常用的控件,就可以快速上手其他控件。
面试中不会有问你“进度条会用不?开关会用不?”
UI控件部分解释
UILabel – 文本标签
• 文本标签的作用仅仅是显示一串固定的文字
UIButton – 按钮
• 按钮的作用是:监听用户的点击事件,在用户点击后做出反应
UITextField – 文本输入框
• 文本输入框可以弹出键盘,让用户输入一些具体的值
UITextView – 能滚动的文字显示控件
• 如果文字内容比较多,需要换行显示,并且需要编辑,就用它
UIProgressView – 进度条
• 水平进度条,比如显示文件的下载进度,程序的启动进度
UISlider – 滑块
• 在2个数值之间滑动选择,比如调节音量大小
UIActivityIndicator – 圈圈
• 一直在转圈圈,表示让用户等
UIAlertView – 对话框(中间弹框)
• 从中间弹出一个框提示用户下一步该干
UIActionSheet – 底部弹框
• 从底部弹出一个框提示用户下一步该干啥
UIScrollView – 滚动的控件
• 如果内容比较多,超出了一个屏幕,就可以用它来显示
UIPageControl – 分页控件
• 能显示当前的页码
UITableView – 表格
• 如果每一行显示的内容格式差不多,就用这个表格控件
UICollectionView – 九宫格
• 如果显示的东西是一块一块、一格一格的,而且每个格子长的差不多,就可以 用它
UIWebView – 网页显示控件
• 一般用来显示网页,使用它,就可以在手机上浏览网页
UISwitch – 开关
• 要么打开,要么关上
UISegmentControl – 选项卡
• 在固定的几个选项之间进行选择
UIPickerView – 选择器
• 在多行数据之间只选择一行
UIDatePicker – 日期选择器 • 选择日期
UIToolbar – 工具条
• 一般显示在底部或者键盘顶部,里面有几个小按钮
UINavigationBar – 导航条
• 显示在顶部的条
iOS中的UI的更多相关文章
- ios 中的UI控件学习总结(1)
UIKit框架提供了非常多功能强大又易用的UI控件 下面列举一些在开发中可能用得上的UI控件 UIButton 按钮 UILabel 文本标签 UITextField 文本输入框 UIImageVie ...
- IOS中调整UI控件位置和尺寸
1.frame(修改位置和尺寸):以父控件左上角为坐标原点,在其父控件中的位置和尺寸. //frame属性中的坐标点不能直接修改 CGRect tempFrame = self.v.frame; // ...
- 软件測试、ios中的測试概念以及步骤
软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...
- 在多线程中进行UI操作--ios学习笔记
iOS 上不建议在非主线程进行UI操作,在非主线程进行UI操作有很大几率会导致程序崩溃,或者出现预期之外的效果. 我开始不知道这一点,在子线程中进行了弹窗操作,结果程序就出问题了! 报的错误是(EXC ...
- 06 (OC)* iOS中UI类之间的继承关系
iOS中UI类之间的继承关系 此图可以更好的让你去理解iOS中一些底层的关系.你能够了解以及理解UI类之间的继承关系,你会更加明白苹果有关于底层的东西,更有助于你的项目开发由它们的底层关系,就能更加容 ...
- iOS中多线程知识总结(一)
这一段开发中一直在处理iOS多线程的问题,但是感觉知识太散了,所以就把iOS中多线程的知识点总结了一下. 1.基本概念 1)什么是进程?进程的特性是什么? 进程是指在系统中正在运行的一个应用程序. ...
- ios中的RunLoop 和 android 中的Looper
今天写android程序,用到了Handler,晚上回来查阅资料,发现了Looper这个概念. 看了一下网上关于Looper的资料,发现这个Looper跟ios中的Runloop基本的理念完全一致! ...
- ios 中直接修改frame里边某个属性的简便方法
参考:http://www.cnblogs.com/wengzilin/p/4359865.html 在iOS中view的frame属性使用地太频繁了,尤其是调UI的时候.我们知道,正常情况下我们无法 ...
- 转iOS中delegate、protocol的关系
iOS中delegate.protocol的关系 分类: iOS Development2014-02-12 10:47 277人阅读 评论(0) 收藏 举报 delegateiosprocotolc ...
随机推荐
- Mac下github项目检出与提交
项目检出 如果你的git还没有代码仓库,可以用过git的代码仓库页面新建一个你的仓库 创建git上的仓库后,我们还需要建立本地的仓库,所以打开Mac终端,建立本地仓库文件夹(这里我用HelloC),然 ...
- ASP.NET MVC初识
最近在博客园看到了很多关于MVC的示例,自己打算写下来记录一下,如果有写得不对的地方,望大侠指出! 开始搭建项目 1. 建立Web项目 文件—>新建项目—>选择ASP.NET MVC4 W ...
- c#初学-多线程中lock用法的经典实例
本文转载自:http://www.cnblogs.com/promise-7/articles/2354077.html 一.Lock定义 lock 关键字可以用来确保代码块完成运行,而不会被 ...
- Entity Framework 的简单介绍与实例
1.下载与引用 a) 首先需要下载一个oracle clinent 12c 发行版(我这边下载的是发行版)并进行安装,下载内容如下图 B) 创建一个项目,通过Nuget引用 添加ODP.NET ...
- Firemonkey 控件设定字型属性及颜色
将控件 StyledSettings 的勾取消(如此才能自定样式及字型,如果勾选则依 Style 而定). 设定 TextSettings 里的 Font 属性. 使用代码寫法: CheckBox1. ...
- Scalaz(45)- concurrency :Task-函数式多线程编程核心配件
我们在上一节讨论了scalaz Future,我们说它是一个不完善的类型,最起码没有完整的异常处理机制,只能用在构建类库之类的内部环境.如果scalaz在Future类定义中增加异常处理工具的话,用户 ...
- NOI 2015 荷马史诗【BZOJ 4198】k叉Huffman树
抱歉因为NOIP集训,好长时间没再写题解了. NOI 2015也就只有这道题一看就能懂了-- 4198: [Noi2015]荷马史诗 Time Limit: 10 Sec Memory Limit: ...
- Myeclipse10下载,安装,破解,插件,优化介绍
一.Myeclipse10下载与破解 Genuitec 公司发布了MyEclipse 10,一款Genuitec旗下的商业化Eclipse集成开发工具的升级版本.MyEclipse 10基于Eclip ...
- cnodejs社区论坛4--话题列表
- hibernate(四)__由表逆向创建Domain对象和对象关系映射文件
之前我们是手写Domain对象和对象关系映射文件->然后生成数据库中的Table. 现在我们反过来先在数据库中建好Table->然后用工具生成Domain对象和对象关系映射文件. 步骤: ...