ios13 UISegmentController前景色设置

 #pragma mark --分段控制器
- (UISegmentedControl *)segController{
    if (!_segController) {
        _segController = [[UISegmentedControl alloc]initWithItems:_buyTypeArr];
        _segController.selectedSegmentIndex = 0;
        _segController.tintColor = [UIColor colorWithHexString:@"fb4e12"];
         if (@available(iOS 13, *)) {
             UIColor *tintColor = [_segController tintColor];
             UIImage *tintColorImage = [self imageWithColor:tintColor];
             //正常背景色
             [_segController setBackgroundImage:[self imageWithColor:[UIColor whiteColor]] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
             
             //选中时的背景色
             [_segController setBackgroundImage:tintColorImage forState:UIControlStateSelected barMetrics:UIBarMetricsDefault];
             
             //高亮
             [_segController setBackgroundImage:[self imageWithColor:tintColor] forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
             //选中时的前景色
             [_segController setBackgroundImage:tintColorImage forState:UIControlStateSelected barMetrics:UIBarMetricsDefault];
             //正常下的文字
             [_segController setTitleTextAttributes:@{NSForegroundColorAttributeName: [UIColor colorWithHexString:@"777777"], NSFontAttributeName: [UIFont systemFontOfSize:13]} forState:UIControlStateNormal];
             //选中时的文字
             [_segController setTitleTextAttributes:@{NSForegroundColorAttributeName: UIColor.whiteColor, NSFontAttributeName: [UIFont systemFontOfSize:13]} forState:UIControlStateSelected];
             //驱动修改
             [_segController setDividerImage:tintColorImage forLeftSegmentState:UIControlStateNormal rightSegmentState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
             //边框样式
             _segController.layer.borderWidth = 1;
             _segController.layer.borderColor = [tintColor CGColor];
             _segController.selectedSegmentTintColor = tintColor;
             
         }else{
                [_segController setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:13],NSForegroundColorAttributeName:[UIColor colorWithHexString:@"777777"]} forState:UIControlStateNormal];
                [_segController setTitleTextAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:13],NSForegroundColorAttributeName:[UIColor whiteColor]} forState:UIControlStateSelected];
                _segController.tintColor = [UIColor colorWithHexString:@"fb4e12"];
        }
        [_segController addTarget:self action:@selector(segControllerChange) forControlEvents:UIControlEventValueChanged];
    }
    return _segController;
}





- (UIImage *)imageWithColor: (UIColor *)color {
    CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f);
    UIGraphicsBeginImageContext(rect.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [color CGColor]);
    CGContextFillRect(context, rect);
    UIImage *theImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return theImage;

}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值