在单元格上设置角半径会降低 UICollectionView 的性能

2023-11-25

我有一个UICollectionView只有几个单元格(大约 20 个)。该系列的性能非常出色。然而,一旦我尝试圆角UICollectionViewCells由于这个视图所呈现的内容,我的表现受到了重大影响。在我的单元格的 init 方法中,这是我添加的唯一一行:

[self.layer setCornerRadius:15];

由于这是在 init 方法中并且我正在正确地重用单元格,因此我不明白为什么这会引起我的问​​题。

我尝试使用以下多种组合来调整销售的光栅化和不透明度,但仍然没有效果:

[self.layer setMasksToBounds:YES];
[self.layer setCornerRadius:15];
[self.layer setRasterizationScale:[[UIScreen mainScreen] scale]];
self.layer.shouldRasterize = YES;
self.layer.opaque = YES;

他们是否有一些设置或技巧来提高性能UICollectionView有圆角单元格吗?


正如@Till 在评论中指出的那样,预渲染的图像应该可以解决您的性能问题。您可以将所有圆角、阴影和任何其他特殊效果放入其中,而不需要 CA 动态渲染它们。

预渲染的图像也不会将您锁定在静态内容大小中:查看UIImage可调整大小的图像东西。 (这仍然比 CA 渲染每帧快得多。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在单元格上设置角半径会降低 UICollectionView 的性能 的相关文章

  • CMDeviceMotion userAcceleration 颠倒了?

    我在 CMDeviceMotion 中的 userAcceleration 字段中看到一些意外的读数 当我查看来自 CMAccelerometerData 的原始加速计数据时 我发现如果 iPhone 平放在桌子上 则读数为 1G 垂直向下
  • 为什么 UIAElement 的孩子不等于他们自己?

    我注意到我不久前编写的 UIAutomation 脚本中有一些奇怪的行为 但我已经有一段时间没有运行了 我的主张失败了 经过一些挖掘后 我发现在迭代 UIAElement 时 elements 子元素似乎不等于它们自己 这在过去对我来说如预
  • 在 XMPPFrameWork ios 中将 XMPPMessage 保存在 CoreData 中

    我正在开发一个聊天应用程序并使用 xmppframework 现在需要将消息存储在持久存储中 谁能告诉我如何在 IOS 中从 CoreData 存储和检索消息 由于您使用的是 github robbiehanson XMPPFramewor
  • 如何在 OauthSwift 库中设置回调 URL

    我正在开发一个项目 其中我正在实现 OAuthSwift 库以连接到同时使用 OAuth1 和 OAuth2 的多个不同社交网站 我已将应用程序设置为加载 Web 视图 将我带到我的社交网站 但我无法让应用程序重定向回来 一旦我加载我的凭据
  • 如何制作抗崩溃的ios应用程序

    我现在正在编写 ios 应用程序一段时间 但我的应用程序仍然经常崩溃 并且需要时间才能使它们变得非常稳定 我觉得这很烦人 那么 有没有关于防崩溃编程ios应用程序的编程模式呢 打开编译器警告 删除所有警告 运行静态分析器 删除所有警告 使用
  • 我想通过协议将数据从第二个 ViewController 传递到 TableView 单元

    这是我的ViewController2从我需要传递数据的地方 我如何传递数据 protocol oppo func datapass Name String className String rollnumner String school
  • IOS Box2D - 身体遵循基于速度波动的点数组的特定路径

    我有一个关于身体的问题 它遵循特定的路径 首先是将身体移动到目标点的方法 const float destinationControl 0 3f b2Vec2 targetPosition path counter b2Vec2 missi
  • 按字符串删除所有重音符号

    surnameField text Fal l opo remove space and apostrophe NSString surnarmeInput surnameField text stringByReplacingOccurr
  • 从音频流获取元数据

    我想从我正在使用 AVQueuePlayer 播放的 AVPlayerItem 中的流 URL 获取文件名和专辑图像 如果可能 但我不知道如何执行此操作 另外 如果我的流媒体 URL 没有任何元数据 我可以将元数据放入我的流媒体 URL 中
  • 延迟推送通知并检查用户是否启用它

    我开发了一个应用程序 它围绕推送通知构建 仅当用户达到注册过程的某个阶段时 应用程序才会请求通知权限 我已经设法做到了以下几点 该应用程序维护一个NSUserDefaults变量 指示是否需要在启动时注册推送 默认情况 不需要 当注册达到该
  • 设置应用程序默认的iOS本地通知样式

    从 iOS 5 开始 有两种通知样式 横幅和警报 旧 样式 用户可以在设置中为每个应用程序设置使用哪种样式 但是 现在默认情况似乎是通知以横幅样式显示 我使用本地通知来提醒 现在 将发生的事件 横幅出现后不久就会消失 而且还不够明显 人们可
  • 使用自动布局以编程方式添加视图会出现“NSGenericException”,原因:“无法在视图上安装约束”

    我使用添加一个视图作为子视图 self view addSubview myView 这在纵向模式下效果很好 然而 它在风景中根本不起作用 如何以编程方式添加布局约束 我的视图当前看起来像纵向矩形 我需要它在横向模式下看起来像横向矩形 我尝
  • 在 UIWebView 中使用自定义字体

    我想在 UIWebView 中显示自定义字体 我已经将字体放在 应用程序提供的字体 下的 plist 中 使用中的代码 UIWebView webView UIWebView alloc initWithFrame myRect NSURL
  • 如何在按下按钮之前停止响应震动?

    我目前正在制作一个 iPhone 应用程序 动画会对轻微的震动做出反应 这是我的代码 static BOOL SJHShaking UIAcceleration last UIAcceleration current double thre
  • 检查 NSDictionary 是否为空

    我想检查是否NSDictionary是空的 我正在这样做 mutDictValues NSUserDefaults standardUserDefaults objectForKey dicValues mutableCopy NSLog
  • AWSS3GetObjectRequest ifModifiedSince 不起作用

    建设为iOS 7 建立在Xcode 6 1 使用亚马逊SDKAWSiOSSDKv2 2 0 12 测试于iPhone 5s 和 iPad 2 我正在使用适用于 iOS 的 Amazon SDK 从我的 Amazon S3 存储桶下载图像 下
  • 在 ARSCNView 中加载大型 3d 对象 .scn 文件 Aspect 适合屏幕 ARKIT Swift iOS

    我正在使用 3d 模型开发 ARKit 应用程序 为此 我使用了 3D 模型并添加了用于移动 旋转和缩放 3D 模型的手势 现在我只面临 1 个问题 但我不确定这个问题是否与什么有关 3d 模型是否存在问题 或者我的程序是否缺少任何内容 问
  • 如何从 Mac OS X 导出证书以获得一对 .cert 和 .key 文件?

    我在 Mac 10 10 1 上创建了证书 并且在钥匙串访问证书中拥有私钥 在 Windows 上我必须使用这个 并且我需要 cert 和 key 文件 如何导出该证书以获得这两个文件 我可以导出为 pb12 或 cert 但不能导出为 c
  • 在 Xcode 4 中将 iPhone 应用程序转换为通用应用程序

    我正在尝试将现有的 iPhone 应用程序项目升级为通用应用程序 但我在 Xcode 4 中找不到任何选项来执行此操作 它在哪里 接受的答案是错误的 创建新目标是指如何从 iPhone 应用程序创建单独的 iPad 应用程序 即可以编译为
  • 核心音频离线渲染GenericOutput

    有人使用 core Audio 成功完成离线渲染吗 我必须混合两个音频文件并应用混响 使用 2 AudioFilePlayer MultiChannelMixer Reverb2 和 RemoteIO 成功了 我可以在预览时保存它 在 Re

随机推荐

  • 如何从 SQL Server 发送电子邮件?

    如何使用 T SQL 发送电子邮件 但电子邮件地址存储在表中 我想遍历表格并能够发送电子邮件 到目前为止 我找不到这样做的好例子 步骤 1 创建个人资料和帐户 您需要使用配置数据库邮件向导创建配置文件和帐户 可以从管理节点中数据库邮件节点的
  • ADB 在 Eclipse 中崩溃

    这个问题涉及到这个线程 但是该线程没有答案 因此从技术上讲这不是重复的 我已经在 Windows 7 x64 和 Eclipse SDK 3 6 2 上运行 ADB 1 0 26 并使用 ADT 10 0 1 SDK 工具 r10 并且已经
  • 如何在 Kotlin 中基于/比较多个值进行排序?

    说我有一个class Foo val a String val b Int val c Date 我想对列表进行排序Foos 基于所有三个属性 我该怎么办呢 Kotlin 的 stdlib 为此提供了许多有用的辅助方法 首先 您可以使用以下
  • 将 .html 文件转换为图像 [关闭]

    Closed 这个问题是无关 目前不接受答案 我正在寻找任何能够忠实地将 html 文件转换为图像格式的实用程序 最好是 png 或 jpeg 我在谷歌上搜索了几个小时 下载了十几个免费试用版 但似乎没有任何效果 Adobe Acrobat
  • npm install -g less 不起作用:EACCES:权限被拒绝

    我正在尝试在 phpstorm 上设置 less 以便我可以在保存时将 less 文件编译为 css 我已经安装了node js和下一步 根据这个https www jetbrains com webstorm help transpili
  • Android ListView 具有多个选择和自定义适配器

    我有一个ListView使用自定义适配器 这ListView允许多项选择 但不知何故它无法识别何时选择了某个项目 我已经使适配器项目扩展为 Checkable 但仍然getCheckedItemPositions 返回一个包含 false
  • 使用控制台让 python 在 Windows XP 上以 UTF8 打印

    我想在 Windows XP 上配置我的控制台以支持 UTF8 并让 python 检测到它并使用它 到目前为止 我的尝试 C Documents and Settings Philippe gt C Python25 python exe
  • Parallel.ForEach 与 BlockingCollection 集成时停止

    我根据中的代码采用了并行 消费者的实现这个问题 class ParallelConsumer
  • Bundle.setup 和 Bundle.require 有什么区别

    From gemfile 手册页 我了解到有两种方法import您在中指定的宝石Gemfile The bundle setup将 安装程序将 gems 添加到 Ruby 的加载路径 同时bundle require将需要所有宝石 这两种方
  • Python Pandas 替换特殊字符

    由于某种原因 我无法让这个简单的语句适用于 它似乎对其他任何事情都有效 但不喜欢那个角色 有任何想法吗 DF NAME DF NAME str replace n Thanks 我假设您在这里使用 Python 2 x 这可能是 Unico
  • 如何保护 JavaScript 文件?

    我知道隐藏源代码是不可能的 但是 例如 如果我必须将 JavaScript 文件从 CDN 链接到网页 并且我不希望人们知道该脚本的位置和 或内容 是这样吗 可能的 例如 要链接网站上的脚本 我们使用 现在 是否可以向用户隐藏脚本的来源 或
  • 在 AppHarbor 上托管 WCF Web API 应用程序?

    I ve implemented a sample app like the one here It is a really basic app just to get things started Everything works fin
  • 如何使用 Firebase SDK v9(模块化)读取、写入和查询 Firebase 实时数据库中的数据

    如何执行读写操作以及从 Firebase 实时数据库查询数据 v8 中的传统语法如下 const snapshot await firebase database ref path once value 考虑样本数据 users user1
  • Xcode 11——SwiftUI 的暗模式设置

    好的 我知道这不应该是火箭科学 我似乎无法让黑暗模式工作 并且我已经阅读了几次文档 希望有人能找出我所缺少的东西 I have an named color in the asset catalog I set my plist mode
  • 如何从单个 java_test() 规则运行 Bazel 中的所有测试?

    我在 Bazel 中添加测试 但我不想为每个测试文件编写测试规则 但是 每个测试规则都需要一个 test class 正在运行的测试类 因此没有简单的方法可以使用单个 java test 规则运行所有测试 有没有一种解决方法可以让我不需要指
  • 无法解析导入com.google.android.gms

    我是 Android 开发新手 依照指示本教程我遇到错误The import com google android gms cannot be resolved当我将代码写入MainActivity java import com goog
  • 为什么我无法使用 jQuery 在 IE 中淡出该表行?

    我无法让表格行在 IE 中淡出 它可以在 Chrome 中运行 但不能在 IE 中运行 它只是变得非常 轻 并停留在屏幕上 我尝试了带兼容模式和不带兼容模式的 IE8 table tr td Hide me td tr table
  • 将日期时间从字符转换为 POSIXct 对象

    我有一个以不规则的时间格式导出数据的仪器 我需要结合date and time向量转化为新的datetime向量如下POSIXct格式 Y m d H M S 出于好奇 我尝试以三种不同的方式做到这一点 使用as POSIXct strft
  • 具有灵活返回类型的 C++ 函数模板

    假设我们有一个像这样的函数 template
  • 在单元格上设置角半径会降低 UICollectionView 的性能

    我有一个UICollectionView只有几个单元格 大约 20 个 该系列的性能非常出色 然而 一旦我尝试圆角UICollectionViewCells由于这个视图所呈现的内容 我的表现受到了重大影响 在我的单元格的 init 方法中