Wie soll ich das mit UIButton verschiedener Stile machen: UIButton.Configuration.glass(), .clearGlass(), .prominentGlass(), .prominentClearGlass()?
Das folgende Beispiel zeigt das Problem:
Code: Select all
import UIKit
import SnapKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .lightGray
let stackView = UIStackView()
stackView.axis = .vertical
stackView.spacing = 20
view.addSubview(stackView)
stackView.snp.makeConstraints { make in
make.center.equalToSuperview()
}
let imageConfig = UIImage.SymbolConfiguration(pointSize: 22, weight: .bold, scale: .large)
let padding = 20.0
[UIButton.Configuration.glass(),.clearGlass(),.prominentGlass(),.prominentClearGlass()].forEach { config in
let button = UIButton(configuration: config)
button.setImage(UIImage(systemName: "square.and.pencil", withConfiguration: imageConfig)?.withRenderingMode(.automatic), for: .normal)
button.configuration?.contentInsets = NSDirectionalEdgeInsets(top: padding, leading: padding, bottom: padding, trailing: padding)
stackView.addArrangedSubview(button)
}
}
}
}

Und wenn ich die Hintergrundfarbe auf reines Weiß stelle, erzeugt es:

Wie Sie sehen können, passen sich die Symbolfarben nicht an den dahinter liegenden Inhalt an und sind daher schwer zu lesen. Wie kann dies in ihren UITabBar-Symbolen archiviert werden?


Mobile version