2
我開始使用DeviceMotion類進行編碼。下面的蘋果documenation後,我有以下幾點:iPhone Motion - EXC BAD ACCESS
- (void)viewDidLoad {
[super viewDidLoad];
myMM = [[CMMotionManager alloc] init];
myMM.deviceMotionUpdateInterval = 1.0/30.0;
theQ = [[NSOperationQueue currentQueue] retain];
motionHandler =^(CMDeviceMotion *motionData, NSError *error) {
if (motionData.rotationRate.z > 5.5 || motionData.rotationRate.z < -5.5) {
NSLog(@"Rotation of Z."); // Reference A
}
};
-(IBAction)toggleClick{
NSLog(@"toggle");
if(myMM.gyroAvailable){
if(myMM.deviceMotionActive){
NSLog(@"Stopping Motion Updates..");
[myMM stopDeviceMotionUpdates];
} else {
NSLog(@"Starting Motion Updates..");
[myMM startDeviceMotionUpdatesToQueue:theQ withHandler:motionHandler];
}
}
else {
NSLog(@"No motion available. Quit!");
}
此代碼工作正常,但是當我想要做的任何代碼,除了一個的NSLog(甚至一些作爲遞增整數一樣簡單)代替了「參考A',我在控制檯中得到一個EXEC Bad Access。
我環顧四周,而我發現的只是這是一種內存泄漏。有誰知道發生了什麼事?如果不是,我該如何解決?我對樂器相當缺乏經驗,但如果我指出正確的方向,我會非常感激。
先生,你是一個天才。我複製並粘貼並完美地工作。我會投票,但我只是13代表:(謝謝你,感恩節快樂。 – 2010-11-26 03:38:41