2012-02-13 29 views

cevap

30

Yerel pusula yok UIView. manyetometreyi kullanmak için, CoreLocation ve aşağıdaki temsilci yöntemi kullanmak gerekir:

- (void) locationManager:(CLLocationManager *)manager 
      didUpdateHeading:(CLHeading *)newHeading 

Kuzey istikametine UIView döndürmek için (bearingView bir UIImageView olan):

float heading = newHeading.magneticHeading; //in degrees 
float headingDegrees = (heading*M_PI/180); //assuming needle points to top of iphone. convert to radians 
self.bearingView.transform = CGAffineTransformMakeRotation(headingDegrees); 
+0

Evet, yerli pusula UIView hakkında haklı olduğunuzu düşünün. Başka birinin aynı fikirde olup olmadığını görmek için biraz bekleyeceğim. Kesinlikle evet, didUpdateHeading çizmeyi seçtiğim herhangi bir resmi güncellemenin yolu. Çok teşekkürler. – theDuncs

+1

Keller - hiç kimse seninle çelişmediğinden, cevabını doğru olanı alacağım. Teşekkürler dostum. – theDuncs

+0

Sorun değil. Kuzeye işaret eden bir pusula görüntüsü oluşturmak için, bir "pusula iğnesi" grafiği oluşturun ve dönüşümü ile döndürün. Düzenleme bölümüne bakın. – Keller

İlgili konular