带有 .listRowInsets(EdgeInsets()) 的披露指标

Posted

技术标签:

【中文标题】带有 .listRowInsets(EdgeInsets()) 的披露指标【英文标题】:Disclosure Indicator with .listRowInsets(EdgeInsets()) 【发布时间】:2021-08-03 14:07:27 【问题描述】:

我希望我的 List 的整行都有一个背景颜色,左右两边没有任何空白,所以我使用了 .listRowInsets(EdgeInsets()) 修饰符。这里是相关代码sn-p。

List 
    ForEach(issue.Data, id: \.self)  issueItem in                   
        NavigationLink(destination: IssueView(issueID: issueItem.IssueID)) 
            IssueRow(issue: issueItem)
        
    
    .listRowInsets(EdgeInsets())

但是,这具有将披露指标推到最右边的效果,在我看来这看起来不太好:

如果没有 .listRowInsets(EdgeInsets()) 修饰符,这就是屏幕的外观(这不是我想要的,我想要以前的版本,但是这里的显示指示器看起来更好):

有没有办法让整行都具有背景颜色,而不会将披露指示器一直推到右侧?

【问题讨论】:

【参考方案1】:

尝试仅对尾随使用非零插入:

.listRowInsets(.init(top: 0, leading: 0, bottom: 0, trailing: 20))

【讨论】:

以上是关于带有 .listRowInsets(EdgeInsets()) 的披露指标的主要内容,如果未能解决你的问题,请参考以下文章

SwiftUI:listRowInsets 未按预期工作

SwiftUI:当“navigationBarItems”修改列表时,“listRowInsets”无法按预期工作[重复]

Swiftui listRowInsets 在添加到空数组时会发生意外更改

如何在 SwiftUI 中删除列表的左右填充?

带有多个链接的 NSAttributedString 的 UILabel,带有行限制,显示尾部截断,带有未见文本的 NSBackgroundColorAttributeName

使用带有 uuencode 的“sendmail”发送邮件,并带有主题