ios13 深色模式更改无法被 tableview Cell 识别?

2023-12-05

我正在检查我现有的应用程序是否可以与 ios 13 新引入的黑暗模式功能正常工作。

一切似乎都工作正常,只有我的一个表视图中的单元格背景没有根据模式(暗/亮)刷新。

如果应用程序以深色模式启动,单元格也会显示正确的深色背景。如果应用程序处于后台时模式发生变化,则单元格背景颜色不会更改。单元格标签正确切换颜色。

对于表格视图单元格,我使用以下函数进行渐变:

func gradient(frame:CGRect) -> CAGradientLayer { 

    let gradColor1 = UIColor(named: "gradientBright")!
    let gradColor2 = UIColor(named: "gradientDark")!

    let layer = CAGradientLayer()
    layer.frame = frame
    layer.startPoint = CGPoint(x: 0.5, y: 0)
    layer.endPoint = CGPoint(x: 0.5, y: 1)
    layer.colors = [
        gradColor1.cgColor,
        gradColor2.cgColor
    ]
    layer.shadowOpacity = 0.7
    layer.shadowRadius = 10.0
    return layer
}

我将渐变背景添加到表格单元格中

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

用下面的代码

cell.layer.insertSublayer(gradient(frame: cell.bounds), at: 0)

知道吗,为什么在应用程序活动或在后台发生模式更改后,只有渐变函数似乎无法获得正确的颜色?

Regards


Cell会检测到,layer将不会!您必须手动更新所有layer的适应cell例如。

override func traitCollectionDidChange(_ previousTraitCollection: UITraitCollection?) {
    super.traitCollectionDidChange(previousTraitCollection)

    if traitCollection.hasDifferentColorAppearance(comparedTo: previousTraitCollection) {
        removeAndReaddGradientIfNeeded()
    }
}

更多描述在这里

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

ios13 深色模式更改无法被 tableview Cell 识别? 的相关文章

  • 什么是 WKWebView 中的 WKErrorDomain 错误 4

    fatal error LPWebView encounters an error Error Domain WKErrorDomain Code 4 A JavaScript exception occurred UserInfo 0x7
  • Swift 中的 import 语句是否有相关成本?

    阅读字符串宣言 我看到一个段落 https github com apple swift blob master docs StringManifesto md batteries included关于避免Foundation不需要的时候导
  • 如何动态获取 UITableViewCell 的高度

    我创建了自定义的tableViewCell 我在UITableViewCell中添加了UIView SubView 所以我在 UIView 中的所有动态文本和图像内容都会根据文本和图像大小而变化 但现在 HeightforRowAtInde
  • 如何使用 CNContacts 快速获取手机号码?

    我有一些代码可以检索用户联系人中的所有电话号码 但只想过滤掉手机号码 目前 我只是通过将第一个数字为 或第二个数字为 7 的数字添加到数组中来实现此目的 如下所示 func findContacts gt CNContact let key
  • iPhone X 将对象底部与安全区域对齐会破坏其他设备上的外观

    关于 iPhone X 自动布局怪癖的问题 我有两个按钮 以前这些按钮将与超级视图底部对齐 偏移量为 20 以免它们接触屏幕底部 此后我将链接更改为安全区域而不是超级视图 Here s the original setup Looks go
  • jQuery:离线后 POST 出错(iOS 和 Chrome)

    我构建了一个具有离线功能的 HTML5 Web 应用程序 使用 AppCache 程序流程为 Online 在网络上时 应用程序预加载一些基本信息 工作 Offline 用户拿着装有应用程序的平板电脑offline 然后在应用程序上执行他们
  • 为什么选择选择器选项后我的 SwiftUI 页面标题会发生变化?

    struct SettingsView View let settings Setting Setting name Aperture Increments options 1 3 1 2 1 Setting name Shutter Sp
  • 如何删除 UITableView 中的缩进?

    首先 我对此很陌生 我很可能忘记了一些非常简单的事情 问题 我正在制作一个应用程序 在 a 中显示来自 imgur com 的随机图像tableView 由于某种原因 所有单元格都会缩进少量 如下图所示 我摆弄了许多设置storyboard
  • 在 WKWebView 中禁用缩放?

    有谁知道在 WKWebView 中禁用双击和捏缩放的简单方法 我尝试过的任何方法都不起作用 Webview scrollView allowsMagnification false Error value of type WKWebView
  • 关闭捕获上下文 Swift

    当我尝试更改闭包中的变量时出现此错误 A C function pointer cannot be formed from a closure that captures context 是否有解决方法或者仍然可以更改闭包内的变量 My C
  • NSPredicate IN 从数组元素查询

    对于一个古怪的标题表示歉意 我有一个 Int 数组 我想定义一个 NSPredicate 来过滤掉 connectionType 等于数组中包含的值的项目 所以基本上是这样的 fetchRequest predicate NSPredica
  • GLKit的GLKMatrix“列专业”如何?

    前提A 当谈论线性存储器中的 列主 矩阵时 列被一个接一个地指定 使得存储器中的前 4 个条目对应于矩阵中的第一列 另一方面 行主 矩阵被理解为依次指定行 以便内存中的前 4 个条目指定矩阵的第一行 A GLKMatrix4看起来像这样 u
  • 防止 iOS 键盘在 cordova 3.5 中滚动页面

    我正在使用 Cordova 3 5 和 jQuery mobile 构建 iOS 应用程序 我在大部分应用程序中禁用了滚动功能 但是 当我选择输入字段时 iOS 键盘会打开并向上滚动页面 我不想要这个功能 由于输入足够高 键盘不会覆盖它 我
  • 在 Objective-C 中的 Swift 类上调用 NSStringFromClass 返回模块损坏的名称

    我知道这个问题 https stackoverflow com questions 24107658 get a user readable version of the class name in swift in objc nsstri
  • 在 SwiftUI 中使用可观察对象切换视图

    我正在练习尝试使用 SwiftUI 中的可观察对象切换视图 但我的代码无法正常工作 我知道我可以用 State 来做到这一点 但我想用可观察的对象来实现这一点 当我单击内容视图中的图像时 图像不会改变 有人能帮我吗 内容视图 swift i
  • 有没有办法在 onclick 触发时禁用 iPad/iPhone 上的闪烁/闪烁?

    所以我有一个有 onclick 事件的区域 在常规浏览器上单击时 它不会显示任何视觉变化 但在 iPad iPhone 上单击时 它会闪烁 闪烁 有什么办法可以阻止它在 iPad iPhone 上执行此操作吗 这是一个与我正在做的类似的示例
  • 诊断和仪器均缺少“僵尸”选项

    运行 Xcode 4 0 2 Zombie 选项丢失 其他 SO 帖子建议找到它的两个地方 Product gt Run looks like this Product gt Profile looks like this 奇怪的是 我之前
  • ios8 键盘高度有所不同

    我使用下面的代码来获取键盘高度 该高度在带有 ios8 的 iPhone 5s 设备中与带有 ios7 的 IPhone4s 设备中有所不同 因此 当我在带有 ios8 的 iPhone5s 中点击它时 我的文本字段移动得非常高 而相同的代
  • 使用日期 Swift 3 对字典数组进行排序

    我有一个名为 myArray 的数组 其中添加了字典 我希望该字典按时间排序 这是字典中的键 那个时间是在 String 中 时间的日期格式为 yyyy MM dd HH mm ss 我尝试使用下面的代码解决方案 但给出了 从 字符串转换
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • D3.csv 未从本地 csv 文件加载数据

    I created a copy of the csv file in my local folder because i wanted to mess around with the data a little bit When i ge
  • 如何在 SQL Server 2005 中的一条语句中更新两个表?

    我想一次性更新两张表 如何在 SQL Server 2005 中执行此操作 UPDATE Table1 Table2 SET Table1 LastName DR XXXXXX Table2 WAprrs start stop FROM T
  • React - TypeError:无法读取未定义的属性(读取“params”)

    所以我收到一条错误消息 TypeError Cannot readproperties of undefined reading params TypeError Cannot read properties of undefined re
  • 声明多维数组时出现堆栈溢出异常

    一般来说 我对编程有点陌生 并且在声明 3D 和 4D 数组时遇到了问题 我在主函数的开头有几个这样的声明 但我已将问题范围缩小到这 4 个 string reg perm mark name 64 64 64 short reg perm
  • 按 data.frame 中连续年份的子集

    我在 R 中有一个 data frame data table 如下 df lt data frame ID c rep A 20 year c 1968 1971 1972 1973 1974 1976 1978 1980 1982 19
  • Laravel OrderBy 关系计数

    我正在尝试获取最受欢迎的黑客马拉松 这需要按相应的黑客马拉松进行排序partipants gt count 抱歉 如果这有点难以理解 我有一个具有以下格式的数据库 hackathons id name hackathon user hack
  • 获取应用程序上下文返回 null

    以下模式被认为是从我的 Android 应用程序中的任何位置获取应用程序上下文的方法 但有时做MyApp getContext 返回空值 我尝试通过删除来更改架构static from getContext 这样我会做MyApp getIn
  • GZipStream 正在切断 XML 的最后一部分

    我创建了一个名为 AddGZip 的扩展方法 如下所示 public static void AddGZip this HttpResponse response response Filter new GZipStream respons
  • WCF 客户端使用证书和用户名/密码凭据?

    我正在使用 ASP NET 公司内部的 Web 服务 我使用 svcutil exe 连接到服务并从 wsdl 生成绑定和类 我可以连接到开发版本 该版本不需要身份验证 现在我们正在增加安全性 我的新 URI 使用 https 但还需要用户
  • 要列出的结果集

    我想用我的数据库字段值创建一个列表 有 2 列 名字和姓氏 我想创建一个列表 将名称列中的所有名称存储在字段中 然后添加到我的 DTO 中 这可能吗 您可以遵循的步骤 首先你需要有一个List
  • WinRT C# - 创建转换器字符串到字符串以绑定 Gridview

    今天我来找你是为了一个 小 问题 我不知道如何创建一个简单的转换器 因为这是第一次 而且我没有找到一个简单的例子 我想为 gridview 绑定创建一个 字符串到字符串 转换器 这是针对图像源的 我从一个对象中获取一个字符串 这是图像的名称
  • 如何保持 sql 依赖关系达到其目的

    我有一个控制台应用程序 我想继续观察数据库表中特定列的变化 我通过互联网阅读 发现 sql 依赖关系很适合我的目的 我开始了解它并做了以下事情 创建一个类 在构造函数中 我调用了静态函数start我调用了一个具有所有 sql 依赖项设置的函
  • 如何使用 Perl 查找和替换 XML 中的文本?

    我的 XML 文件看起来像这样
  • 如何将 DWORD RGBA 转换为整数?

    我必须将 DWORD 无符号长整型 RGBA 转换为四个 int 变量 R G B 和 A 到目前为止 我有这个函数将 4 个整数转换为 DWORD unsigned long RGBA2DWORD int iR int iG int iB
  • 启动时停止背景音频

    我可以通过在 info plist 文件中添加设置来使应用程序在移动到后台时播放音频 但是 当其他一些iOS应用程序播放背景音频时 当当前应用程序进入前台时 如何停止其他应用程序调用的背景音频呢 查看 Apple 的 AVAudioSess
  • MongoCommandException:命令失败,错误 8000 (AtlasError):“未发送 SNI 名称,请确保使用 MongoDB 3.4+ 驱动程序/shell。”

    我正在使用 Java 11 Maven 项目 作为 mongodb 免费层集群 版本 4 0 13 我正在尝试通过连接字符串 对于 3 6 驱动程序或更高版本 进行连接 例如 mongodb srv user email protected
  • 覆盖 Swift 中存储的属性

    我注意到编译器不允许我用另一个存储值覆盖存储的属性 这看起来很奇怪 class Jedi var lightSaberColor Blue class Sith Jedi override var lightSaberColor Red C
  • 汇编 Linux 系统调用与汇编 OS X 系统调用

    我在 Mac 上运行汇编代码时遇到问题 我目前正在阅读 Jeff Duntemann 的书 Assembly Step by Step 问题是它专注于为 32 位 Linux 系统编写汇编 我使用的是 64 位 mac os x 系统 我仍
  • 有条件参考

    我正在编写一个应用程序 它通过Component Object Model图书馆 我必须在 Visual Studio 项目本身中引用此 COM 库 以便我编写的应用程序能够正常工作 还有一个 NET 包装器库 我必须在 Visual St
  • ios13 深色模式更改无法被 tableview Cell 识别?

    我正在检查我现有的应用程序是否可以与 ios 13 新引入的黑暗模式功能正常工作 一切似乎都工作正常 只有我的一个表视图中的单元格背景没有根据模式 暗 亮 刷新 如果应用程序以深色模式启动 单元格也会显示正确的深色背景 如果应用程序处于后台