当我尝试使用CoreMotion移动UIScrollView的内容时遇到问题。
问题是,我有一个大约5000px的背景,在容器内,它在我的scrollView(是一个风景应用程序)内;我已设置self.scrollView.bounces = FALSE;
,我的动作值为attitude.pitch * 10.0;
,当我移动内容并且它到达pointZero
或self.scrollView.contentSize.width
的边缘时,它不会尊重界限并继续在白色屏幕上移动,就像它没有限制一样。
所以,我设置了一个验证(下面的代码),但当它到达pointZero
它应该停止但仍然给我一个小的白色边框。我设置了一个NSLog,我看到contentOffset
仍在进行x =-14
,就像弹跳是活跃的一样。音高值控制是因为当音高值为零时,内容保持在pointZero
,当我提高音高值时,直到-14。
我认为我的验证有问题,如果有人可以提供帮助,我将非常感激!!
self.accel = attitude.pitch *10.0;
//"pointZERO"----------------
if (self.gameArea.contentOffset.x <= self.gameArea.frame.origin.x) {
NSLog(@"%2.f",self.gameArea.contentOffset.x);
self.gameArea.contentOffset = CGPointZero;
} else {
self.gameArea.contentOffset = CGPointMake(self.gameArea.contentOffset.x + self.accel,0.0);
}
//"END OF SCREEN"------------------------
if (self.gameArea.contentOffset.x + self.gameArea.frame.size.width >= self.gameArea.contentSize.width) {
NSLog(@"%2.f",self.gameArea.contentOffset.x);
self.gameArea.contentOffset = CGPointMake(self.gameArea.contentSize.width - self.gameArea.frame.size.width ,0.0);
} else {
self.gameArea.contentOffset = CGPointMake(self.gameArea.contentOffset.x + self.accel,0.0);
}