Iphone 为什么程序背景会减慢UIScrollView的速度?
我的问题代码是在UIView drawRect中绘制的过程背景中:然后将其作为子视图添加到UIScrollView。程序代码如下。它绘制了长方体形状,看起来有点像天际线。你知道为什么这会减慢my UIScrollView的速度吗?它似乎只是在第一次滚动时变慢了,然后它就好像被缓存了一样。背景宽度可以高达1000像素,有时甚至更宽。请看图片Iphone 为什么程序背景会减慢UIScrollView的速度?,iphone,ios,uiview,uiscrollview,drawrect,Iphone,Ios,Uiview,Uiscrollview,Drawrect,我的问题代码是在UIView drawRect中绘制的过程背景中:然后将其作为子视图添加到UIScrollView。程序代码如下。它绘制了长方体形状,看起来有点像天际线。你知道为什么这会减慢my UIScrollView的速度吗?它似乎只是在第一次滚动时变慢了,然后它就好像被缓存了一样。背景宽度可以高达1000像素,有时甚至更宽。请看图片 - (void)drawRect:(CGRect)rect { UIBezierPath *vertLine = [[UIBezierPath alloc]
- (void)drawRect:(CGRect)rect
{
UIBezierPath *vertLine = [[UIBezierPath alloc] init];
[vertLine moveToPoint:CGPointMake(0,self.frame.size.height)];
int detail = 10;
int ranNum = 0;
int count = self.bounds.size.width/detail;
CGFloat heightIncrement = 0.0;
CGFloat minHeight = self.frame.size.height;
CGFloat xPos = 0;
CGFloat yPos = self.frame.size.height-20;
for (int i =0; i<count; i++)
{
ranNum += (arc4random() % 9)-5;
yPos -= (arc4random() % 30);
[vertLine addLineToPoint:CGPointMake(xPos,yPos)];
xPos += (arc4random() % 20)+10;
[vertLine addLineToPoint:CGPointMake(xPos,yPos)];
yPos += (arc4random() % 30);
[vertLine addLineToPoint:CGPointMake(xPos,yPos)];
xPos += (arc4random() % 30);
[vertLine addLineToPoint:CGPointMake(xPos,yPos)];
if (yPos>self.frame.size.height-10) {
yPos = self.frame.size.height-10;
}
if (yPos<self.frame.size.height-50) {
yPos = self.frame.size.height-50;
}
}
[vertLine addLineToPoint:CGPointMake(count*20,(self.frame.size.height))];
[[UIColor colorWithRed:0.0/255.0 green:38.0/255.0 blue:51.0/255 alpha:1] setFill];
[vertLine fill];
}
可能是因为您的绘图超出了滚动范围。尝试:
[yourScrollView setContentOffest:CGPointMake(0,0)];