iOS在UITableView中自定义滚动条

时间:2012-07-20 06:58:47

标签: iphone ios uitableview scrollbar customization

在iPhone中,我将使用图像自定义UITableView的滚动条。 但我没有找到正确的方法。 请帮我。 提前谢谢。

1 个答案:

答案 0 :(得分:1)

首先,您必须在Interface Builder中取消选中showVerticalIndicatir和showHorizo​​ntallIndicatir。

然后在ViewDidLoad方法中添加:

    [super viewDidLoad];
    self.scrollViewBarImgView = [[UIImageView alloc] init];
    UIImage *imgBar = [UIImage imageNamed:@"scroller.png"];
    [self.scrollViewBarImgView setImage:imgBar];
    CGRect frame = scrollViewBarImgView.frame;
    frame.size.width = 8;
    frame.size.height = 60;
    frame.origin.x = 312;
    frame.origin.y = 0;
    [self.scrollViewBarImgView setFrame:frame];

[self.tableView addSubview:scrollViewBarImgView];

然后在 - (void)scrollViewDidScroll方法:

CGPoint offset = scrollView.contentOffset;
CGRect frame = self.scrollViewBarImgView.frame
float fact = (cellHeight*numberOfRow+ indicatorBarHeight) / tableViewHeight;
frame.origin.y = offset.y + (offset.y/fact);
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.1];
[self.scrollViewBarImgView setFrame:frame];
[UIView commitAnimations];