Fransızcayım, bu yüzden İngilizcem için özür dilerim. Bu yüzden bir ivmeölçer kullanıyorum, ama kodumda ivmeölçer bir görüntü için değil, bir görünüm için çalışıyor. Yapmak istediğim, bu ivme ölçerini görüntü yerine bir görüntü için kullanmaktır. Bunu nasıl yapabilirim? Sen protokol UIAccelerometerDelegate uyması için bunun yerine herhangi bir sınıf seçebilirsiniz geri arama gibi bir görünüme sahip gerekmezXcode iPhone ivmeölçer image
#define CONST_fps 100.
#define CONST_map_shift 0.01
#define kFilteringFactor 0.1
UIAccelerationValue rollingX, rollingY, rollingZ;
@implementation MapViewRotationViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// accelerometer settings
[[UIAccelerometer sharedAccelerometer] setDelegate:self];
[[UIAccelerometer sharedAccelerometer] setUpdateInterval:(1.0/CONST_fps)];
}
- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration
{
rollingX = (acceleration.x * kFilteringFactor) + (rollingX * (1.0 - kFilteringFactor));
rollingY = (acceleration.y * kFilteringFactor) + (rollingY * (1.0 - kFilteringFactor));
rollingZ = (acceleration.z * kFilteringFactor) + (rollingZ * (1.0 - kFilteringFactor));
float accelX = acceleration.x - rollingX;
float accelY = acceleration.y - rollingY;
float accelZ = acceleration.z - rollingZ;
static CGFloat ZZ = 0.;
CGFloat z = (atan2(rollingX, rollingY) + M_PI);
if (fabsf(ZZ - z) > CONST_map_shift)
{
viewToRotate.layer.transform = CATransform3DMakeRotation(ZZ=z, 0., 0., 1.);
}
}
@end
Burada ne sorduğunuzu anlamıyorum. Yukarıdaki kodu kullanarak bir görünümü döndürebilirseniz, bu görünüm neden bir UIImageView olamaz? –