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 ...
随机推荐
- 实现iOS图片等资源文件的热更新化(一): 从Images.xcassets导出合适的图片
本文会基于一个已有的脚本工具自动导出所有的图片;最终给出的是一个从 Images.xcassets 到基于文件夹的精简 合适 的图片资源集的完整过程.难点在于从完整图片集到精简图片集,肯定是基于一个定 ...
- 利用grunt-contrib-connect和grunt-connect-proxy搭建前后端分离的开发环境
前后端分离这个词一点都不新鲜,完全的前后端分离在岗位协作方面,前端不写任何后台,后台不写任何页面,双方通过接口传递数据完成软件的各个功能实现.此种情况下,前后端的项目都独立开发和独立部署,在开发期间有 ...
- 【转载】async & await 的前世今生(Updated)
async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...
- jquery输入数字随机抽奖特效
简介:jQuery自定义数值抽奖活动代码是一款点击开始按钮计算机会产生玩家输入范围内的随机数,点击停止按钮,将显示数字最终结果的效果. 效果展示 http://hovertree.com/texiao ...
- C程序编译过程浅析
前几天看了<程序员的自我修养——链接.装载与库>中的第二章“编译和链接”,主要根据其中的内容简单总结一下C程序编译的过程吧. 我现在一般都是用gcc,所以自然以GCC编译hellworld ...
- Asp.Net WebService 使用后来管理系统对接口方法进行公开控制
思路: 1.需要找一个访问Webservice的统一入口,刚开始进入了一个误区,以为WebService是单独的运行程序,后来经朋友提醒,其实它也是通过http请求在asp.net framework ...
- EventBus简单的实现
EventBus是最近项目用到的,也只是会些简单的功能,不过感觉功能蛮强大的.代码链接:http://download.csdn.net/detail/qq_29774291/9629346 Even ...
- Struts2之Struts2-2.5.5 Interceptor
Struts2-2.5.5版本是目前为止最新的版本了,相对于之前的2.3版本以及再之前的版本而言,新版本改动了很多. 好了,废话不多说,GO CODE! 基本jar包: web.xml核心配置,这里要 ...
- 【Effective Java】12、避免过度同步
这里有一个辅助基础类 package cn.xf.cp.ch02.item16; import java.util.Collection; import java.util.Iterator; imp ...
- Nuget很慢,我们该怎么办
在VS中给项目添加程序已经采用NuGet 十分方便 不过很多时候速度很慢,一直显示“正在检索信息” 其实直接使用程序包管理控制台,速度就会好很多 如果命令不太会写,安装包名不是确认,可以先登录 htt ...