Когда мы не изменяем фоновое изображение UISegmentedControl, установка цвета оттенка может работать отлично. Но как только мы изменим фоновое изображение, независимо от того, какой цвет мы установили для цвета оттенка, выбранный цвет UIsegmentControl будет отображаться серым цветом. решить эту проблему без настройки нового класса?
UISegmentedControl tintcolor не может работать после установки backgroundImage
comment
Пожалуйста, поделитесь своим экраном пользовательского интерфейса после установки фонового изображения, чтобы мы могли больше прояснить вопрос
- person SM18   schedule 08.12.2016
comment
Большое спасибо за ваш совет.
- person LinSeanYu   schedule 08.12.2016
Ответы (1)
Использовать этот:
#import "ViewController.h"
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UISegmentedControl *segmentedControl;
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self.segmentedControl setBackgroundImage:[UIImage imageNamed:@"blue.png"]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
[self.segmentedControl setBackgroundImage:[UIImage imageNamed:@"green.png"]
forState:UIControlStateSelected
barMetrics:UIBarMetricsDefault];
self.segmentedControl.tintColor = [UIColor orangeColor];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
Выход:
Ссылка на GitHub:
https://github.com/k-sathireddy/SegmentedControlBackgroundWithTint
person
KSR
schedule
08.12.2016