使用UITableView、UICollectionView时,当数据变更了,需要重新调用reloadData刷新时,有时候界面会出现闪烁。 造成闪烁的原因,主要是因为CALayer有一个隐式动画,只要在调用reloadData刷新时,关闭隐式动画就可以避免了。代码示例如下: [CATransact ...
分类:
其他好文 时间:
2021-07-22 17:41:22
阅读次数:
0
一、去下方路径: 二、搜索以下信息: - (void)displayLayer:(CALayer *)layer 三、并替换或者更改为以下信息: - (void)displayLayer:(CALayer *)layer{ if (_currentFrame) { layer.contentsSca ...
分类:
移动开发 时间:
2021-02-09 11:56:44
阅读次数:
0
1.离屏渲染是什么 首先我们要知道图像渲染的基本原理:由CPU计算好显示内容,GPU 渲染完成后将渲染结果放入帧缓冲区,随后视频控制器会按照 HSync 信号逐行读取帧缓冲区的数据,经过可能的数模转换传递给显示器显示。 如果在当前用于显示的屏幕缓冲区中进行渲染操作,那就是当前屏幕渲染,如果是在当前屏 ...
分类:
移动开发 时间:
2020-07-08 15:40:37
阅读次数:
86
在使用Masonry的时候,默认情况下,设置的约束并不会立即生效,此时获得的所有的frame都为0。但在有的时候,我们需要获取此时的宽跟高,此时就要设置控件的约束立即生效。 view1 = [UIView new]; [self.view addSubview:view1]; [view1 mas_ ...
分类:
其他好文 时间:
2020-06-23 21:14:57
阅读次数:
95
在iOS开发中,UIView有一个clipsToBounds属性,可以设置UIView是否切割Subview超出本身的部分,Apple Developer文档的定义如下: 但是在Mac开发时,首先因为相关的资料在网上很少,NSView也没有这个属性,所以对于如何在NSView中实现类似于clipsT ...
分类:
其他好文 时间:
2020-06-20 22:35:36
阅读次数:
77
谈谈事件的产生和传递和响应? 🔥事件的产生 我们知道UIApplication、UIViewController、UIView都是UIResponder的子类,都是可以处理事件的。在发生触摸事件的时候系统会先将该事件交给UIApplication处理,通常UIApplication先将事件交给UI ...
分类:
其他好文 时间:
2020-06-15 12:32:36
阅读次数:
63
UICollectionView与UITableView类似,都可以使用reloadData来进行cell内容的更新。 UICollectionView可以采用reloadItemsAtIndexPaths方法。 self.collectionView.reloadItems(at: [indexP ...
分类:
移动开发 时间:
2020-06-09 16:56:19
阅读次数:
169
1. 控件为什么用weak修饰:控件已经被UIView强指针指向,如果用strong, 则viewController也将强指针指向控件, 在view销毁时可能无法销毁该控件。 2. command + shift + h : 模拟器回到主界面 command + shift + h(h连按两下) ...
分类:
移动开发 时间:
2020-04-19 10:53:12
阅读次数:
70
新建SwiftUI文件 预览 SwiftUI可以实时看到对页面的做出的修改,纯SwiftUI时,默认静态预览。点击预览串口的Resume按钮可查看。 预览包含UIView子类视图时,需要打开时时预览 如果没有显示预览窗口则按下图操作打开即可 拖放 command键 + 鼠标点击组件,可以方便的添加组 ...
分类:
编程语言 时间:
2020-04-11 00:37:42
阅读次数:
79
SwiftUI 探索 - 闭包总结 SwiftUI 探索 - 状态和数据流 SwiftUI 探索 - 不透明返回类型 SwiftUI 探索 - Combine SwiftUI使用UIKit框架,控制器需实现UIViewControllerRepresentable协议,视图需实现UIViewRepr ...
分类:
编程语言 时间:
2020-04-11 00:04:24
阅读次数:
83