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的值 来达到上面的效 ...
随机推荐
- C++经典面试题解析
1. // BlankTest.cpp : 定义控制台应用程序的入口点. //题目:将一个文件中的一组整数排序后输出到另一个文件中 #include "stdafx.h" #inc ...
- Task C# 多线程和异步模型 TPL模型 【C#】43. TPL基础——Task初步 22 C# 第十八章 TPL 并行编程 TPL 和传统 .NET 异步编程一 Task.Delay() 和 Thread.Sleep() 区别
Task C# 多线程和异步模型 TPL模型 Task,异步,多线程简单总结 1,如何把一个异步封装为Task异步 Task.Factory.FromAsync 对老的一些异步模型封装为Task ...
- Python - colour-science库
http://nbviewer.jupyter.org/github/colour-science/colour-ipython/blob/master/notebooks/colour.ipynb# ...
- 深入理解Atomic原子操作和volatile非原子性
原子操作可以理解为: 一个数,很多线程去同时修改它,不加sync同步锁,就可以保证修改结果是正确的 Atomic正是采用了CAS算法,所以可以在多线程环境下安全地操作对象. volatile是Java ...
- 浅谈C#中常见的委托
一提到委托,浮现在我们脑海中的大概是听的最多的就是类似C++的函数指针吧,呵呵,至少我的第一个反应是这样的. 关于委托的定义和使用,已经有诸多的人讲解过,并且讲解细致入微,尤其是张子阳的那一篇.我就不 ...
- 谈谈java垃圾回收机制
近期看了一些关于垃圾回收机制的文章,总结一下. 垃圾回收器回收程序不在使用的对象占用的内存,也就是对象不可达,比方说对象被置为null. 要回到java的垃圾回收机制,从下面三个方面去回答: 1.哪些 ...
- Pattern: API Gateway / Backend for Front-End
http://microservices.io/patterns/apigateway.html Pattern: API Gateway / Backend for Front-End Contex ...
- iOS 开发常用的调试工具
前言 最近博主临近毕业季,为了完美的写一篇毕业论文,真是:“锄禾日当午,汗滴禾下土”<—— 这句诗跟毕业我写毕业论文没任何一毛钱关系,我就是突然想吟湿了.不过博主作为网络工程专业的好青年,曾经的 ...
- java性能时间与空间消耗
Java性能时间与空间消耗 一.减少时间消耗 标准代码优化 (1) 将循环不变量的计算移出循环 例如:for (int i=0; i<size()*2; i++) { ... } ------& ...
- 关于View转化成bitmap保存成图片
产品今天说项目分享时要分享出一张 封面图片 + 几行文字 + 二维码图片 的图片. 思索了一下 封面图片和二维码图片让后台给接口得到地址, 主要还是找个方式得到一个包含这些内容的图片.于是就想能不能 ...