介绍 UIView 会占用屏幕上一个矩形的空间。 主要处理两件事:画出矩形控件,并处理其中的事件。 UIView 是层级结构,UIView 只有一个父 View,但可以有多个子 View。...UIView 可以直接在 storyboard 里面拖拽使用,也可以使用纯代码方式使用。 UILabel、UITextField、UIButton UILabel 显示静态文本。...{ indicator.stopAnimating() // UIView动画 // 动画执行的时间 // 动画执行的操作...-> UIView { return UIImageView(image: UIImage(systemName: "person")) } // 设置高度 func...内容除了设置 String 类型,还可以设置 UIView 类型,且一旦设置了 UIView,设置 String 的失效。 代理方法可以设置内容的高度。
在iOS开发中,我们知道有一个共同的基类——NSObject,但是对于界面视图而言,UIView是非常重要的一个类,UIView是很多视图控件的基类,因此,对于UIView的学习闲的非常有必要。...下面主要通过学习UIView.h文件来了解UIView主要提供了那些方法和属性,从UIView.h的源码来看,UIView.h的结构主要分为4个部分: 常用枚举类型的定义,主要包括 视图动画曲线 UIViewAnimationCurve...) 视图快照相关的扩展 UIView (UISnapshotting) 下面是UIView.h文件的源码分析,以下内容参考自:ios开发 之 UIView详解。...,strong) UIView *viewForLastBaselineLayout NS_AVAILABLE_IOS(9_0); 531 532 533 UIKIT_EXTERN const CGFloat...截取成一个新的view */ 650 - (nullable UIView *)snapshotViewAfterScreenUpdates:(BOOL)afterUpdates NS_AVAILABLE_IOS
UIView 与 CALayer 概括 UIView 本身是不具备图像渲染能力的,拥有一个 layer 属性用来持有一个 CALayer 实例,我们平时操作的 UIView 的绝大部分绘图属性内部其实都是操作其拥有的...其实上面已经提到 CALayer 和 UIView 其实不属于同一个框架,CALayer 所属的 QuartzCore 框架是可以跨平台使用的,在 iOS 以及 macOS 中都可以使用,但是 UIKit...iOS 中将该缓存区保存的图片称为 寄宿图。而当设备屏幕进行刷新时,会从 CALayer 中读取生成的 bitmap, 进而呈现到屏幕上。...顺便提一下,iOS 和 macOS 两个系统的参考坐标系不一致,对于 iOS 来说原点默认在视图的左上角位置,往右为 X 正方向,往下是 Y 正方向;而对于 macOS 来说原点默认是在视图的左下角位置...参考及相关链接 UIView中frame属性的内部实现[4] View-Layer 协作[5] iOS界面渲染与优化(二) - UIView与渲染[6] 参考资料 [1]核心动画编程指南: https:
前言 iOS 精致的app,离不开酷炫合宜的动画。而iOS中的动画实现也有多种不同的方式。今天就来介绍一下iOS中的动画。...UIView 动画 UIView动画就是利用UIView的API来实现动画效果。而利用UIView API也可以分为两种,一种block形式,一种多API组合。...一、block形式的UIView 动画 常用的block UIView 动画方法有如下几个: ? API.png 按顺序分别编号①、②、③、④、⑤。...③ 最常用的UIView动画API 先上示例代码,将试图移出屏幕外之后,将其删除: [UIView animateWithDuration:3.0 animations:^{ squareView.frame...]; [UIView setAnimationDuration:2.0]; [UIView setAnimationDelegate:self]; [UIView setAnimationWillStartSelector
重点参考链接: View Programming Guide for iOS https://developer.apple.com/library/ios/documentation/WindowsViews...在ios7里边,主窗口和次窗口是没有区别的。 在ios7以前中有区别:哪个是主窗口,后面设置为主窗口会把之前设置的覆盖掉。...(0, 0, ESScrnW, ESScrnH); [UIView commitAnimations]; 4 UIView重绘机制 4.1 DrawRect机制 4.1.1 简介 iOS...iOS中很多类型的事件分发,都依赖于响应链;在响应链中,所有对象的基类都是UIResponder,也就是说所有能响应事件的类都是UIResponder的子类,UIApplication/UIView/...开发笔记--UIView中的坐标转换 http://blog.csdn.net/hopedark/article/details/18215083 IOS--UIView中的坐标转换 http://blog.sina.com.cn
毋庸置疑的:在iOS开发中,制作动画效果是最让开发者享受的环节之一。一个设计严谨、精细的动画效果能给用户耳目一新的效果,吸引他们的眼光 —— 这对于app而言是非常重要的。...本文作为动画文集的第一篇,最开始是想做个qq下拉刷新的水滴动画的制作讲解,但这几天研读《iOS Animations by Tutorials》一书,对iOS动画开发有了更为深刻的了解,于是决定动画篇将从...UIView动画开始讲起,以后还会有Layer、Transitioning等在内的动画,希望本文能抛砖引玉,带给大家不一样的理解,下面送上一张书中demo的效果图。...本文作为动画篇的第一篇博客,目的是为了从最简单的UIView动画讲起,慢慢的拓展其它的动画,也希望能起到抛砖引玉的作用。...在文章的最后,如果你是iOS动画的初学者,请尝试结合上面提到的知识,为本文最开始的登录demo中添加代码,让按钮从下方渐变显示弹出: ? 弹出的登录按钮 最后的最后,吐槽一下gitcafe。
而-webkit-touch-callout 在ios8中是失效的,查资料说是一个bug。...更多参考资料: 1) pointer-events 2) iOS Disable User Select but Allow Input
我们这里一个或多个图层的叠加的构成了UIView(或其派生类)对象。看过我关于 UIView 文章的人可能会有疑问:UIView 和图层没啥区别啊?...NO,还是有区别的,图层是有弹性的,你可以操纵图层,使 UIView 有各种效果,比如三维效果,形变等等。 要访问一个图层,需要读取 UIview 的 layer 属性。...作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:642363427不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!...你可能会为每个图层准备一个专门的UIView类,并另外用一个UIView类来整合游戏画面: UIView* gameView = [[UIView alloc]initWithFrame:[[UIScreen...mainScreen]applicationFrame]]; UIView* roleView= [[UIView alloc]initWithFrame:CGRectMake(0.0,
简述 本文将讲述在iOS开发中如何根据某个UIView来获取所属的UIViewController UIResponder 在iOS中UIResponder类是专门用来响应用户的操作处理各种事件的,包括触摸事件...我们知道UIApplication、UIView、UIViewController这几个类是直接继承自UIResponder,所以这些类都可以响应事件。...当然我们自定义的继承自UIView的View以及自定义的继承自UIViewController的控制器都可以响应事件。...20170512174229676.png 代码 - (UIViewController *)getControllerFromView:(UIView *)view { // 遍历响应者链。
看了iOS6编程实践第9章后,总结一下UIView和CALayer的异同点: UIView 负责绘制与事件处理,而CALayer只负责绘制。 UIView的绘制也是交给CALayer的。...UIView和CALayer都可以有下一层,都是树状结构。 自定义的UIView重写drawRect,自定义的CALayer重写drawInContext或重写委托者的drawLayer方法。...UIView会在第一次显示或需要重绘时自动调用drawRect,而CALayer不会,需要显示调用setNeedsDisplay。
(翻转)方式一: [NSTimer scheduledTimerWithTimeInterval:3.f repeats:YES block:^(NSTimer...
用Masonry实现 UIView Animation 简单动画 其实只需要在mas_updateConstraints:设置完需要更新的layout之后调用父视图的layoutIfNeeded方法就行...@interface MOViewTestViewController () @property (nonatomic, strong) UIView *moView; @end @implementation...就需要先强制刷新后再写动画 // 否则还没生成约束就会直接跑动画,得不到想要的动画效果 // [self.moView.superview layoutIfNeeded]; [UIView...self.moView.superview layoutIfNeeded]; // 强制绘制 (重点是这句) }]; } - (void)createView { self.moView = [[UIView
UIView专题 1UIWindow 1.1UIWindow简介 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow。...一个iOS程序之所以能显示到屏幕上,完全是因为它有UIWindow。也就说,没有UIWindow,就看不见任何UI界面。...UIWindow继承自UIview。...(3)view.window获得某个UIView所在的UIWindow。...在ios7里边,主窗口和次窗口是没有区别的。 在ios7以前中有区别:哪个是主窗口,后面设置为主窗口会把之前设置的覆盖掉。
在了解UIView block动画实现原理之前,需要先了解CALayer的可动画属性。 1....有趣的是,如果这个CALayer被一个UIView所持有,那么这个CALayer的delegate就是持有它的那个UIView。...所以UIView可以相当灵活的控制动画的产生。...实际上结果大家都应该能想得到:在UIView的动画block外面,UIView的这个方法将返回NSNull,而在block里面,UIView将返回一个正确的CAAction对象(这里将不深究UIView...*** 更多:iOS面试题合集
hidden property @property(nullable, nonatomic,strong) UIViewController *rootViewController NS_AVAILABLE_IOS...iOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制器的view添加到UIWindow上,于是控制器的view就显示在屏幕上了 主要作用是提供一个区域用来显示...UIView;将事件分发给UIView;与UIViewController一起处理屏幕的旋转事件。...UIView的显示。...layer给view提供了基础设施,使得绘制内容和呈现更高效动画更容易、更低耗 layer不参与view的事件处理、不参与响应链 *** 更多:iOS面试题合集
UIView UIView类定义了一个矩形区域在屏幕上和管理内容的接口。 Overview 在运行时,一个视图对象处理任何内容的呈现它的面积,还处理任何与内容交互。...UIView类本身提供了基本行为与背景颜色填充的矩形区域。更复杂的内容可以被子类化UIView提出和实施必要的图纸和事件处理代码。...通常情况下,子视图的可见区域的范围不剪它的父视图,但在iOS可以使用clipsToBounds属性来改变行为。...如何使用UIView类的详细信息,看到视图iOS编程指南。 The View Drawing Cycle 视图绘制需要的基础上发生。...UIView类做的大部分工作执行实际的动画,但你还必须表明哪个属性改变你想要动画。
iOS动画开发之三——UIView的转场切换 前两篇博客中,我们分别介绍了UIView动画的两种使用方式,分别为,带block的方式:http://my.oschina.net/u/2340880...通过UIView动画的类方法,我们可以十分方便的使View某些属性改变的同时拥有动画效果。这篇博客主要讨论View切换的动画操作。 ...两个方法: + (void)transitionWithView:(UIView *)view duration:(NSTimeInterval)duration options:(UIViewAnimationOptions...+ (void)transitionFromView:(UIView *)fromView toView:(UIView *)toView duration:(NSTimeInterval)duration
iOS开发中,创建View常见的两种方式一个是纯代码,一个是借助于XIB;创建ViewController常见的也有两种方式一个是纯代码,一个是借助于StoryBoard。...awakeFromNib] -[ViewController loadView] -[ViewController viewDidLoad] -[ViewController viewDidAppear:] 如果纯代码创建UIView...YFView alloc]init];那么它的生命周期为: -[YFView initWithFrame:] -[YFView init] -[YFView layoutSubviews] 如果纯代码创建UIView...[UIScreen mainScreen].bounds];那么它的生命周期为: -[YFView initWithFrame:] -[YFView layoutSubviews] 如果通过XIB创建UIView
开发UI篇—UIWindow简单介绍 http://www.cnblogs.com/wendingding/p/3770052.html iOS动画总结----UIView动画 http://blog.csdn.net...html (Good)iOS事件分发机制(一)hit-Testing http://suenblog.duapp.com/blog/100031/iOS事件分发机制(一)%20hit-Testing...%20Chain hitTest:withEvent:方法流程 http://blog.csdn.net/jiajiayouba/article/details/23447145 iOS的UIView.../blog.csdn.net/smking/article/details/9791365 iOS开发笔记--UIView中的坐标转换 http://blog.csdn.net/hopedark/article.../details/18215083 IOS--UIView中的坐标转换 http://blog.sina.com.cn/s/blog_a573f7990102vgui.html
IOS笔记CALayer的position和anchorPoint CALayer有2个非常重要的属性:position和anchorPoint @property CGPoint position;
领取专属 10元无门槛券
手把手带您无忧上云