美文网首页Android精选
如何设置tableView、scrollView的滚动条颜色、位

如何设置tableView、scrollView的滚动条颜色、位

作者: Joymerry | 来源:发表于2019-01-22 09:21 被阅读29次

1.设置滚动条居左是通过设置滚动条的偏移量实现的

//通过设置偏移量来设置滚动条居左�

tableViews.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, 0, tableViews.bounds.size.width-7);

参数分别代表上、左、下、右的偏移量,偏移量越大,离对应的偏移点越远,上边代码示例,代表的意思为距离右边的偏移量为tableviews的宽度减7(即距离左边距7像素)

2.设置滚动条颜色问题

  • 第一种:系统简单的方法indicatorStyle属性,可满足简单需求
    枚举类型:
typedef NS_ENUM(NSInteger, UIScrollViewIndicatorStyle) {
    UIScrollViewIndicatorStyleDefault,     // black with white border. good against any background
    UIScrollViewIndicatorStyleBlack,       // black only. smaller. good against a white background
    UIScrollViewIndicatorStyleWhite        // white only. smaller. good against a black background
};
//分别设置默认值、黑色、白色
tableViews.indicatorStyle = UIScrollViewIndicatorStyleWhite;
  • 第二种:通过遍历视图的子视图方式获取到滚动条然后进行设置
    //设置滚动条颜色(代码必须放在tableview加载父视图之后才有效,否则设置没有效果)
[tableViews.subviews enumerateObjectsUsingBlock:^( id obj, NSUInteger idx, BOOL * _Nonnull stop)
     {
         if ([obj isKindOfClass:[UIImageView class]]) {
             UIImageView * imageView = [[UIImageView alloc] init];
             imageView = obj;
             //必须先设置imageView的image为空的,否则颜色显示偏灰,之前默认的颜色会对背景颜色有影响,然后再设置背景颜色
             imageView.image = [UIImage imageNamed:@""];
             imageView.backgroundColor = RGB(242, 111, 11);
         }
     }];

滚动条本身是一个imageView,通过遍历获取到imageView,必须先设置imageView的image为空的,否则颜色显示偏灰,之前默认的图像会对背景颜色有影响,然后再设置背景颜色,出来的效果就是想要的效果!


滚动条颜色居左并更改颜色.png

相关文章

网友评论

    本文标题:如何设置tableView、scrollView的滚动条颜色、位

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