UISegmentedControl под IOS 13 - PullRequest
       22

UISegmentedControl под IOS 13

0 голосов
/ 21 апреля 2020

При IOS 13 оказывается невозможным программно изменить фон или оттенок цвета сегментированных элементов управления. Мое приложение, которое работало правильно с синим черным фоном и белым оттенком, теперь отображается на белом / сером фоне и черном цвете. Код для изменения цвета выполняется, и ошибок нет.

У кого-нибудь есть идеи, как это сделать?

Используя target- C, иметь представление таблицы с массивом данных элементы, состоящие из помеченных сегментированных элементов управления.

Заданное значение ............... ДА НЕТ

Я могу изменить цвет элемента Label, используя

[ee setLabelColor:[UIColor blueColor];

но я не могу понять, как изменить фон сегментированного элемента управления или цвет текста. Нужно ли использовать атрибуты в NSMutableDictionary?

    NSMutableDictionary *dd = [[NSMutableDictionary alloc] init];

    DataElement *ee;
    ee  = [[DataElement alloc] initSegmentedControlWithLabel:@"Set Value" defaultValue:[s intValue] items:[NSArray arrayWithObjects:@"No", @"Yes", nil]];

[ee setTextColor;[UIColor blueColor]];


    [dd setObject:ee forKey:@"dataElement"];
    [dd setObject:@"Set-Value" forKey:@"type"];
    [aSpecific addObject:dd];

Представление таблицы отображается с метками, но сегментированный элемент управления имеет ДА ​​и НЕТ на белом / не совсем белом фоне.

1 Ответ

0 голосов
/ 21 апреля 2020

In iOS 13. Способ изменения цвета оттенка (тонирование заголовков и изображений) заключается в вызове сегментированного элемента управления setTitleTextAttributes(_:for:) с другим .foregroundColor.

...