美文网首页
UISegmentControl只设置 borderColor

UISegmentControl只设置 borderColor

作者: xkevin | 来源:发表于2016-07-21 12:10 被阅读226次

最近工作中有一个需求,要求UISegmentControl的选中背景色和边框色要求不一致,设置tintColor 会将背景色和边框色都进行了修改,最终使用了如下方法

   [_sortControl setBackgroundImage:[UIImage imageWithColor:[UIColor chituGreenColor] size:CGSizeMake(1, 27)] forState:UIControlStateSelected barMetrics:UIBarMetricsDefault];//the size width has no effect
   [_sortControl setBackgroundImage:[UIImage imageWithColor:[UIColor whiteColor] size:CGSizeMake(1, 27)] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
    _sortControl.tintColor = [UIColor clearColor];
    _sortControl.layer.borderColor = [UIColor chituGrey2Color].CGColor;
    _sortControl.layer.borderWidth = 0.5;
    _sortControl.layer.cornerRadius = 2;
    _sortControl.layer.masksToBounds = YES;

其中 [UIImage imageWithColor] 用来将纯色设置成背景图片

[问题:segmentControl中间的分割线没有了...,如果这个无法接受的话,建议使用多个UIButton代替UISegmentControl]

相关文章

网友评论

      本文标题:UISegmentControl只设置 borderColor

      本文链接:https://www.haomeiwen.com/subject/oasvjttx.html