问题标签 [swiftui-list]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - SwiftUI 中列表的 isScrollEnabled 等价物是什么?
UIKit
对于继承自 的任何内容UIScrollView
,有一个属性isScrollEnabled
允许您禁用视图的滚动。
浏览SwiftUI 中 ScrollView的文档,我还没有找到等效的文档。
最接近的是.disabled()
函数,但这相当于.isUserInteractionEnabled
from UIKit
,这不是我想要的。
swiftui - SwiftUI - 如何在列表中编辑行?
我想使用 EditButton() 来切换编辑模式,并让我的列表行切换到编辑模式。我想在编辑模式中包含一个新按钮以打开模式。我什至无法获得 EditMode 值来切换行内容。
ios - 如何删除 SwiftUI NavigationView 中的默认导航栏空间
我是SwiftUI的新手(像大多数人一样)并试图弄清楚如何删除List
我嵌入在NavigationView
.
在此图像中,您可以看到List
.
我想要完成的是:
我试过使用:
但这并没有产生任何明显的变化。
我目前正在像这样设置我的 navigiationView:
定义如下FileBrowserView
的 aList
和s 视图在哪里:FileCell
我确实想指出,这里的最终目标是您将能够单击这些单元格以更深入地导航到文件树中,因此应该在更深入的导航栏上显示一个后退按钮,但我不想要任何东西在我最初的看法中也是如此。
swift - SwiftUI 列表选择不选择
我正在尝试为用户使用列表选择来从列表中选择零天或多天。我曾尝试使用此问题中列出的解决方案,但无济于事。
我的代码如下所示,并且我已验证编辑模式处于活动状态。我应该期待上面链接的答案中的行为。
代码:
EditButton 包含在父视图中,并在以下代码中启用。
该表应显示其他答案中的选择行为,但目前它在编辑模式下仅显示为普通列表。
ios - 在 SwiftUI 中有条件地更改 NavigationLink 目标
我有一个带有列表的视图,根据我单击的列表项,我需要打开一个不同的 NavigationLink。
我有一个用于列表的一行的行模型(我说的是列表,即使我实际上通常使用一个名为 Collection 的定制元素,它是一个带有 HStack 和 VStack 的列表来模拟UICollectionView)
在行模型视图中,我只能为 NavigationLink 指定一个目的地。
我能想到的一个解决方案是获取被点击的列表项的索引并基于该索引打开某个视图。但我无法让它工作。
我基本上需要 List 中的每个元素打开一个不同的视图。
任何帮助表示赞赏! 谢谢 !:)
GroupDetail.swift
swiftui - 在 SwiftUI 分组表中按下编辑模式按钮之前不会删除行
我使用 ObservableObject 作为数据源在 SwiftUI 中实现了一个分组表。嵌套的 ForEach 用于生成每个部分。EditMode() 按钮切换该 Environment 属性。在编辑模式下,当删除操作完成时,被删除的行(意外地)保留在屏幕上。(即使该对象已从数据源数组中删除。)当用户返回正常查看模式时,该对象迟迟会从表中删除。
为了尝试追踪错误:
数据源对象符合 Hashable、Identifiable 和 Equatable。
实现了一个简单的删除操作(即删除@Published 属性中的第一个对象)
数据源/视图模型存储在@EnvironmentData 对象中
所以简单的问题是我做错了什么会导致 SwiftUI 不会立即在一个非常简单的(我认为)分组(按部分)列表上反映 EditMode 中的删除操作?
在 SceneDelegate.swift
swiftui - 如何有效地过滤 SwiftUI 中的长列表?
我一直在编写我的第一个 SwiftUI 应用程序,用于管理图书收藏。它有List
大约 3,000 个项目,可以非常有效地加载和滚动。如果使用切换控件过滤列表以仅显示书籍我没有更新前 UI 冻结了 20 到 30 秒,大概是因为 UI 线程正忙于决定是否显示 3,000 个单元格中的每一个。
有没有一种好方法可以在 SwiftUI 中处理像这样的大列表的更新?
core-data - 使用列表中的 CoreData 对象作为环境对象
我目前正在使用 SwiftUI 创建一个 News-Feed-Reader 应用程序。
我正在获取提要项目并将它们存储在 CoreData
我想在包含 NavigationLinks 到详细视图的列表中显示对象,并在单击它们时自动将它们标记为已读。
我目前正在获取对象并将它们放入 ObservableObject 中。这是 ObservableObject 类:
在我创建一个包含所有 ObservableObjects 的数组的环境对象 (EO) 的那一刻,这个 EO 被传递到列表中,每当我点击一个项目时,我都会将其读取值设置为 true,从而更改核心数据对象。
这是列表:
这种方法相当缓慢。每当我打开详细视图并在几秒钟后返回时,List-Item 需要几秒钟才能刷新。
关于如何改进这一点的任何想法?
swiftui - 刷新 SwiftUI 列表
Í每当我单击 NavLink 时,我都会尝试刷新此列表
该列表由环境对象内的数组组成。问题:只有当我切换到另一个选项卡或关闭我之前使用模态视图的应用程序并且它在那里工作时才会刷新。(我用.onAppear 做到了)有什么想法吗?
例子
问题:当您点击列表中的项目并点击切换按钮时,EnvironmentObject 已更改,但此更改仅在我更改选项卡并再次更改回时反映
swiftui - 刷新 NavigationView 环境对象
我试图创建一个可编辑的环境对象并将其放入列表中。例如,仅当我切换选项卡时(所以每当我离开 NavigationView 时),变量才会刷新,然后再回来。
以前同样适用于 ModalView。这可能是一个错误吗?还是我做错了什么?