• 不管你是学习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的更多相关文章

  1. ios 中的UI控件学习总结(1)

    UIKit框架提供了非常多功能强大又易用的UI控件 下面列举一些在开发中可能用得上的UI控件 UIButton 按钮 UILabel 文本标签 UITextField 文本输入框 UIImageVie ...

  2. IOS中调整UI控件位置和尺寸

    1.frame(修改位置和尺寸):以父控件左上角为坐标原点,在其父控件中的位置和尺寸. //frame属性中的坐标点不能直接修改 CGRect tempFrame = self.v.frame; // ...

  3. 软件測试、ios中的測试概念以及步骤

    软件測试: 软件測试的目标是应该服务于软件项目的目标,能够通过建议反馈使用更加高效的方法和工具,提升软件开发效率以及软件开发质量.同一时候还能够通过过一些手段,更早.更快.很多其它地发现缺陷.从容减少 ...

  4. 在多线程中进行UI操作--ios学习笔记

    iOS 上不建议在非主线程进行UI操作,在非主线程进行UI操作有很大几率会导致程序崩溃,或者出现预期之外的效果. 我开始不知道这一点,在子线程中进行了弹窗操作,结果程序就出问题了! 报的错误是(EXC ...

  5. 06 (OC)* iOS中UI类之间的继承关系

    iOS中UI类之间的继承关系 此图可以更好的让你去理解iOS中一些底层的关系.你能够了解以及理解UI类之间的继承关系,你会更加明白苹果有关于底层的东西,更有助于你的项目开发由它们的底层关系,就能更加容 ...

  6. iOS中多线程知识总结(一)

    这一段开发中一直在处理iOS多线程的问题,但是感觉知识太散了,所以就把iOS中多线程的知识点总结了一下. 1.基本概念 1)什么是进程?进程的特性是什么? 进程是指在系统中正在运行的一个应用程序.   ...

  7. ios中的RunLoop 和 android 中的Looper

    今天写android程序,用到了Handler,晚上回来查阅资料,发现了Looper这个概念. 看了一下网上关于Looper的资料,发现这个Looper跟ios中的Runloop基本的理念完全一致! ...

  8. ios 中直接修改frame里边某个属性的简便方法

    参考:http://www.cnblogs.com/wengzilin/p/4359865.html 在iOS中view的frame属性使用地太频繁了,尤其是调UI的时候.我们知道,正常情况下我们无法 ...

  9. 转iOS中delegate、protocol的关系

    iOS中delegate.protocol的关系 分类: iOS Development2014-02-12 10:47 277人阅读 评论(0) 收藏 举报 delegateiosprocotolc ...

随机推荐

  1. javascript设计模式实践之策略模式--输入验证

    策略模式中的策略就是一种算法或者业务规则,将这些策略作为函数进行封装,并向外提供统一的调用执行. 先定义一个简单的输入表单: <!DOCTYPE html> <html> &l ...

  2. .Net语言 APP开发平台——Smobiler学习日志:用MenuView控件仿钉钉APP的首页菜单

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Smobil ...

  3. Razor语法

    1. 截取字符串  @(i.Title.Length > 18 ? i.Title.Substring(0, 18) + "" : i.Title) 2. 格式化日期  @s ...

  4. WinForm打印

    WinForm打印要用打印控件: PageSetupDialog:打印设置对话框 PrintDialog:打印对话框 PrintDocument:要打印的对象,非常重要 PrintPreviewCon ...

  5. Android学习笔记(九) 视图的应用布局效果

    最近少了写博客,可能最近忙吧,工作上忙,因为工作原因也忙于学习,也没记录什么了,也没有按照之前的计划去学习了.现在就记录一下最近学到的. 要做Android应用,界面设计少不了,可惜之前一直在用Win ...

  6. EC笔记,第一部分:2.尽量以const,enum,inline代替#define

    02.尽量以const,enum,inline代替#define 原因:编译前的预处理会替换宏,所以调试的时候找不到错误 1.const 尽量用const替代常量宏定义 两种特殊情况: (1).常量指 ...

  7. Spring常用注解汇总

    本文汇总了Spring的常用注解,以方便大家查询和使用,具体如下: 使用注解之前要开启自动扫描功能 其中base-package为需要扫描的包(含子包). <context:component- ...

  8. 泛函编程(30)-泛函IO:Free Monad-Monad生产线

    在上节我们介绍了Trampoline.它主要是为了解决堆栈溢出(StackOverflow)错误而设计的.Trampoline类型是一种数据结构,它的设计思路是以heap换stack:对应传统递归算法 ...

  9. [javaSE] 反射-方法的反射

    1.如何获取某个方法 方法的名称和方法的参数列表才能唯一决定一个方法 2.方法反射的操作 method.invoke(); package com.tsh.reflect; import java.l ...

  10. Asp.net SignalR 实现服务端消息推送到Web端

              之前的文章介绍过Asp.net SignalR,  ASP .NET SignalR是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信.  今天我 ...