如何清除SwiftUI列表项上的默认突出显示的灰色?

时间:2020-03-31 13:18:06

标签: ios swift uikit swiftui swiftui-list

我无法更改List项的突出显示颜色,在UIKit Id中可以轻松地将TableViewCell的{​​{1}}属性元素 Default 更改为。我找不到这种简单交互的解决方案,我缺少什么吗?

谢谢。

编辑:我尝试过但是没用。

Selection

enter image description here

1 个答案:

答案 0 :(得分:0)

将代码添加到init()

   init() {
        // Set selected (onTapped) background color of cell.
        let color = UIView()
        color.backgroundColor = UIColor.red
        UITableViewCell.appearance().selectedBackgroundView = color
    }

例如:

import SwiftUI

struct SomeView: View {

    init() {
        // Set selected (onTapped) background color of cell.
        let color = UIView()
        color.backgroundColor = UIColor.red
        UITableViewCell.appearance().selectedBackgroundView = color
    }

    var body: some View {

        // Your List/ForEach code
        Text(/"Hello, World!")
    }
}

我注意到swiftUI预览没有显示更改,但是在模拟器中或在设备上运行时,您会看到效果。

在您的情况下,您需要设置UIColor.clear,这将根据需要消除灰色。