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 ...
随机推荐
- .NET Core第三方开源Web框架YOYOFx
YOYOFx框架 YOYOFx是一个轻量级用于构建基于 HTTP 的 Web 服务,基于 .NET 和 Mono 平台. 本着学习的态度,造了这个轮子,也是为了更好的了解各个框架的原理和有点,还希望可 ...
- ES6笔记(4)-- Symbol类型
系列文章 -- ES6笔记系列 Symbol是什么?中文意思是标志.记号,顾名思义,它可以用了做记号. 是的,它是一种标记的方法,被ES6引入作为一种新的数据类型,表示独一无二的值. 由此,JS的数据 ...
- ASP.NET MVC系列:控制器的Edit方法
在前面我们已经介绍了如何创建控制器.视图和数据模型,运行之前的项目并打开Movies主页,将鼠标悬停在“编辑”菜单上,你会看到浏览器右下角显示了“编辑”链接的地址
- 获取DataTable选择第一行某一列值
数据源是一个DataTable,现在我们需要获取这个DataTable的第一行第一列的值.先准备一个数据集,创建一个DataTable,并填充数据: source code: using System ...
- 新浪微博.Net SDK第三版源代码和示例【最后一次更新了】
时间过得飞快,距离上次SDK更新已经3年有余.随着官方的不断跟新,老版SDK的部分接口已经不能正常使用.因此在QQ群里来吐槽的.来谩骂的朋友也开始多了起来.随着时代的发展,微博已经彻底的被微信甩开,因 ...
- Android获取ROOT权限
获取Android的ROOT权限其实很简单,只要在Runtime下执行命令"su"就可以了. // 获取ROOT权限 public void get_root(){ if (is_ ...
- ServletContext中常用方法介绍
一..获取Tomcat的Context的初始化参数.1.获取Tomcat的server.xml中设置Context的初始化参数.例如: <Context path="/testcont ...
- NoSQL入门概述
入门概述 1 NoSQL是什么? NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL",泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关 ...
- 图-最短路径-Dijktra(迪杰斯特拉)算法
1. 迪杰斯特拉算法是由荷兰计算机科学家狄克斯特拉算法于1959 年提出的,因此又叫狄克斯特拉算法.是从一个顶点到其余各顶点的最短路径算法,解决的是有向图中最短路径问题.迪杰斯特拉算法主要特点是以起始 ...
- (旧)子数涵数·C语言——hello world
一说起hello world想必你们就知道我要干什么了,毕竟hello world基本是每个高级语言的第一个案例. 好,切入正题,我们开始用C语言编写hello world! 一.打开C语言的IDE( ...