iOS View
创建: 2018/04/19
完成: 2018/04/20
View的创建 | |||||||||||||||||||||||||||||||
创建 | storyboard上操作 | ||||||||||||||||||||||||||||||
与代码连接 |
● 目的: 通过代码控制view ● 按住option拖动 |
||||||||||||||||||||||||||||||
View的坐标 | |||||||||||||||||||||||||||||||
view的坐标 |
左上为原点, 往右+x, x为width 往下+y, y为height |
||||||||||||||||||||||||||||||
CGRect |
处理x, y, width, height的构造体 ● 生成: CGRect(x: x, y: y, width: width, height: height) ● 属性
|
||||||||||||||||||||||||||||||
CGPoint |
处理坐标x, y的构造体 ● 生成: CGPoint(x: x, y: y) |
||||||||||||||||||||||||||||||
CGSize |
处理长宽width, height的构造体 ● 生成: CGSize(width: width, height: height) |
||||||||||||||||||||||||||||||
属性 |
|
||||||||||||||||||||||||||||||
在程序里创建View | |||||||||||||||||||||||||||||||
addSubView(view: UIView)
let viewByCode = UIView.init(frame: CGRect.init(x: , y: , width: , height: )) |
|||||||||||||||||||||||||||||||
UIView | |||||||||||||||||||||||||||||||
所有UI都是UIView的子类 | |||||||||||||||||||||||||||||||
● 设定坐标 CGRect ● 设定border ● 增加subView addSubView ● 下面的 |
|||||||||||||||||||||||||||||||
属性 |
|
||||||||||||||||||||||||||||||
方法 |
|
||||||||||||||||||||||||||||||
UIImageView | |||||||||||||||||||||||||||||||
● 用于展示图片 | |||||||||||||||||||||||||||||||
content mode |
对应项目条: content mode
|
||||||||||||||||||||||||||||||
UIScrollView | |||||||||||||||||||||||||||||||
UITableView, UICollectionView的父类 |
|||||||||||||||||||||||||||||||
设置滚动内容大小 |
● 通过autolayout自动设置 ● contentSize属性 |
||||||||||||||||||||||||||||||
带项目条的属性 |
|
||||||||||||||||||||||||||||||
其他属性 |
|
||||||||||||||||||||||||||||||
方法 |
|
||||||||||||||||||||||||||||||
UITableView | |||||||||||||||||||||||||||||||
重复利用cell |
● 提高运行效率
|
||||||||||||||||||||||||||||||
datasource |
必须继承UITableViewDataSource ● 分出去单独类时, 要继承NSObject
|
||||||||||||||||||||||||||||||
delegate |
必须继承UITableViewDelegate ● 分出去单独类时, 要继承NSObject ● 没有必须的方法, 可以不实现 |
||||||||||||||||||||||||||||||
UICollectionView | |||||||||||||||||||||||||||||||
和UITableView差不多 | |||||||||||||||||||||||||||||||
注册与 再利用cell |
|
||||||||||||||||||||||||||||||
dataSource |
必须继承UICollectionViewDelegate ● 分出去单独类时, 要继承NSObject ● 没有必须的方法, 可以不实现
|
||||||||||||||||||||||||||||||
delegate |
必须继承UICollectionViewDelegate ● 分出去单独类时, 要继承NSObject ● 没有必须的方法, 可以不实现 |
||||||||||||||||||||||||||||||
iOS View的更多相关文章
- iOS View 模糊效果(毛玻璃)
iOS View 模糊效果(毛玻璃) 相关资料 http://stackoverflow.com/questions/18404907/using-gpuimage-to-recreate-ios ...
- ios View 向上拉界面源码
如下的资料是关于ios View 向上拉界面的代码. #pragma mark - 上升效果- (void)ToUpSide { } - (void)moveToUpSide { ...
- ios view的frame和bounds之区别(位置和大小)
前言: 学习ios开发有一段时间了,项目也做了两个了,今天看视频,突然发现view的frame和bound两个属性,发现bound怎么也想不明白,好像饶你了死胡同里,经过一番尝试和思考,终于弄明白bo ...
- iOS View的Frame和bounds之区别,setbounds使用(深入探究)
前言: 在ios开发中经常遇到两个词Frame和bounds,本文主要阐述Frame和bound的区别,尤其是bound很绕,较难理解. 一.首先,看一下公认的资料: 先看到下面的代码你肯定就明白了一 ...
- iOS view和viewController的生命周期
一.ViewController的职责 对内管理与之关联的View,对外跟其他ViewController通信和协调.对于与之关联的View,ViewController总是在需要的时候才加载视图,并 ...
- ios View之间的切换 屏幕旋转
6.3 View之间的切换 在上面的练习中我们通过移动组件的位置和调整组件的大小来处理横向与纵向的界面布局.但是在界面中有很多组件的时候,对每个组件都进行这样的操作确实是一个麻烦的事情.下面我们看看 ...
- IOS view拖拽(触摸事件)
• iOS中的事件可以分为3大类型 触摸事件 加速计事件 远程控制事件 响应者对象 • 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并处理事 件.我们称之为“响应 ...
- IOS View编程指南笔记
我们所示程序 对于一切IOS APP来说.我们看的的内容,都是UIView所呈现的. UIView如场景,UIWindow如舞台.UIView粉墨登场在UIWindow这个舞台上,使我们看到丰富多彩的 ...
- 解决 iOS View Controller Push/Pop 时的黑影
那么如何解决这个问题呢? 实际上很简单,如果这个 ViewController 是在 TabBarViewController 的 NavigationController 上 Push/Pop 的, ...
- ios view改变背景图
一般我们设置 一个view的背景 可以通过 在view上放一个imageView 来显示背景图片 这里介绍另外一种方法 可以直接通过改变view.backgroundColor的值 来达到上面的效 ...
随机推荐
- 第三讲_图像特征与描述Image Feature Descriptor
第三讲_图像特征与描述Image Feature Descriptor 概要 特征提取方法 直方图 对图片数据/特征分布的一种统计:对不同量进行直方图统计:可以表示灰度,颜色,梯度,边缘,形状,纹理, ...
- BUPT复试专题—内存分配(2014-2)
题目描述 在操作系统中,内存分配是非常重要的工作.己知内存空间由N个内存块组成,这些内存块从1到N编号.进行内存分配时,操作系统将选择一块大小足够的内存全部分配给请求内存的进程.例如,当进程请求10M ...
- 转:CEO, CFO, CIO, CTO, CSO是什么
转自:https://club.1688.com/threadview/26957122.html CEO, CFO, CIO, CTO, CSO是什么?(现在O太多了) 帖子创建时间: 2009年 ...
- javascript 在线文本编辑器
javascript 在线文本编辑器实现代码. 效果例如以下: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcGhwZmVuZ2h1bw==/font/5 ...
- Microsoft Dynamics CRM Server 2013软件安装要求
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveV9mMTIz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/d ...
- Android Studio——gradle同步出错:MALFORMED
Android Studio之前使用本地的gradle-2.10,而后创建新的工程总是报错,信息如下: Gradle sync failed: MALFORMED 而后在File->Projec ...
- JSON JavaScriptSerializer 字符串的长度超过了为 maxJsonLength 属性设置的值。
1.序列化: 以下代码在对象过大时会报错:进行序列化或反序列化时出错.字符串的长度超过了为 maxJsonLength 属性设置的值. //jsonObj比较大的时候会报错 var serialize ...
- iOS开发核心语言Objective C —— 面向对象思维、setter和getter方法及点语法
本分享是面向有意向从事iOS开发的伙伴们.或者已经从事了iOS的开发人员.假设您对iOS开发有极高的兴趣,能够与我一起探讨iOS开发.一起学习,共同进步.假设您是零基础,建议您先翻阅我之前分享的iOS ...
- 数据结构与算法之贪心算法 C++实现
1.基本思路:从问题的某一个初始解触发逐步逼近给定的目标,以尽可能快的求得更好的解. 当达到算法中某一步不能再继续前进时.就停止算法,给出近似值.也就是说贪心算法并不从总体最优考虑,它所作出的选择仅仅 ...
- HDU 2955 Robberies(01背包变形)
Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...