A UISegmentedControlhat ein neues Erscheinungsbild in iOS 13 und vorhandener Code zum Ändern der Farben des segmentierten Steuerelements funktioniert nicht mehr wie bisher.
Vor iOS 13 konnten Sie das tintColorund festlegen , das für den Rahmen um das segmentierte Steuerelement, die Linien zwischen den Segmenten und die Hintergrundfarbe des ausgewählten Segments verwendet wird. Anschließend können Sie die Farbe der Titel jedes Segments mithilfe des Attributs Vordergrundfarbe mit ändern titleTextAttributes.
Unter iOS 13 tintColormacht das nichts. Sie können die segmentierten Steuerelemente so einstellen backgroundColor, dass die Gesamtfarbe des segmentierten Steuerelements geändert wird. Ich kann jedoch keine Möglichkeit finden, die Farbe zu ändern, die als Hintergrund für das ausgewählte Segment verwendet wird. Das Festlegen der Textattribute funktioniert weiterhin. Ich habe sogar versucht, die Hintergrundfarbe des Titels festzulegen, aber das wirkt sich nur auf den Hintergrund des Titels aus, nicht auf den Rest der Hintergrundfarbe des ausgewählten Segments.
Kurz gesagt, wie können Sie die Hintergrundfarbe des aktuell ausgewählten Segments eines UISegmentedControlin iOS 13 ändern ? Gibt es eine geeignete Lösung mit öffentlichen APIs, bei der nicht in die private Unteransichtsstruktur gegraben werden muss?
In iOS 13 gibt es keine neuen Eigenschaften für UISegmentedControloder UIControlund keine der Änderungen in UIViewist relevant.





