I'm starting to use github and here is the first project I share on it.
We all know that UIScrollView can show indicators—small thumbs that hint user how content is positioned within the UIScrollView. They overlay the view and can't be dragged as their desktop conterparts—scrollbars. In case you miss them or if you want custom thumbs you may use CustomScrollBar that I've written exactly for this purpose. While not quite useful on the iPhone it may find its place on iPad where screen is larger and there is a place for fancy widget. That's how it looks in simulator:

The thumb itself is an image, you can replace it with whatever you want to. Scrollbar can be fully setup in Interface Builder without writing any code:
- Add UIScrollView that shows scrollable content
- Add CustomScrollBar
- Connect scrollView outlet of scrollbar with UIScrollView
- Connect delegate outlet of UIScrollView with CustomScrollBar
And that should be enough.
You may also use CustomScrollBar with UITableView, but it's a bit trickier. Delegate of UITableView is also typically its data source and scrollbar is not designed to fulfill this role. Which means that scrollbar won't receive notifications from the table when it was scrolled and so won't update the thumb position appropriately. The solution is simple: in your implementation of table delegate/data source add a method to update scrollbar when table is scrolled. The code may look like this:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
[self.scrollBar scrollViewDidScroll:scrollView];
}
And everything will work as expected.
Hope this widget could be useful and as always your suggestions and corrections are welcome!






