在我的应用程序中,我已经将UIScrollView
子类化,并在drawRect
方法中绘制水平线
我将ContentSize
的高度设置为大于scrollView
的高度。我用下面的方法绘制线条
但我的问题是我绘制的线条没有使用View滚动。
-(id)initWithFFrame:(CGRect)rect
{
_gap=36;
}
- (void)drawRect:(CGRect)rect
{
// Drawing code
int end=0;
NSLog(@"called");
int x=self.frame.size.width;
while (end<self.contentSize.height) {
CGContextRef context=UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 1);
CGContextSetStrokeColorWithColor(context, [UIColor blackColor].CGColor);
CGContextMoveToPoint(context, 0, end);
CGContextAddLineToPoint(context, x, end);
CGContextStrokePath(context);
end=end+_gap;
}
}
我可以注意到滚动条在滚动时上下移动但线条没有移动。
答案 0 :(得分:2)
问题是这些行是UIScrollView
的一部分,而不是它的内容。
您需要创建一个新的UIView
子类,在那里绘制内容,然后将其添加到UIScrollView