我想根据设备方向应用移动背景。如果设备垂直竖直放置并绕 y 轴旋转,则背景应根据旋转值向左或向右移动。
背景上的其他图标将是静态的,因此会产生 3d 效果。作为引用,我需要与此视频中显示的完全相同的效果:http://www.youtube.com/watch?v=429kM-yXGz8
到目前为止我开发的代码是:
- (void)updateViewsWithAcceleration:(CMAcceleration)acceleration;
{
_accelX = ((acceleration.x* 0.1) + (_accelX*.9));
_accelY = ((acceleration.y* 0.1) + (_accelY*.9));
_accelZ = ((acceleration.z* 0.1) + (_accelZ*.9));
[_backgroundShadow setFrame:CGRectMake(_accelY*50,_accelZ*50, _backgroundShadow.bounds.size.width, _backgroundShadow.bounds.size.width)];
[_titleShadow setFrame:CGRectMake(_accelY*50, _accelZ*50, _titleShadow.bounds.size.width, _titleShadow.bounds.size.width)];
}
最佳答案
仅供引用:您正在查看加速度,而不是陀螺仪;试试这个:
- (void)viewDidLoad {
[super viewDidLoad];
cmmm = [[CMMotionManager alloc] init];
if (cmmm.gyroAvailable) {
cmmm.gyroUpdateInterval = 1.0/60.0;
[cmmm startGyroUpdates];
CMGyroHandler gyroHandler = ^ (CMGyroData *gyroData, NSError *error) {
CMRotationRate rotate = gyroData.rotationRate;
NSLog(@"rotation rate: {%6.2f, %6.2f, %6.2f}", rotate.x, rotate.y, rotate.z);
};
} else {
NSLog(@"No gyro");
[cmmm release];
}
}
关于ios - 如何在 ios 中使用陀螺仪应用 3D 移动背景效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16852696/