1

我正在尝试在 SwiftUI 中列表的滑动操作中修改图像的颜色。

我尝试了几件事:

  • 使用渲染模板设置图像,然后应用 foregroundColor 修改器
  • 将foregroundColor修饰符直接设置为按钮
  • 试图设置自定义图像

我为此搜索了很多,但我没有找到任何东西,不仅没有找到解决方案,我也没有找到 NO,比如“你不能那样做”,所以这个问题是给我和任何人的未来试图做同样的事情,他们能够找到一个快速的解决方案或一个快速的“那是不可能的”。

我的一段代码,非常简单:

                List {
                    if viewModel.showSkeleton {
                        ForEach(0...4, id: \.self) { _ in
                            SkeletonTransactionRowView().listRowSeparator(.hidden)
                        }
                    } else {
                        ForEach(viewModel.transactions) { transaction in
                            TransactionRowView(transaction: transaction)
                                .swipeActions {
                                    Button { viewModel.delete(transaction: transaction) } label: {
                                        Label("Delete", systemImage: "trash")
                                    }
                                    .tint(.red)
                                }
                            
                        }
                        .listRowSeparator(.hidden)
                    }
                }
                .listStyle(PlainListStyle())

注意:我知道我可以制作自定义拖动手势并手动执行所有这些操作,但我想知道是否可以使用滑动操作修饰符来完成。

4

0 回答 0