私は音楽アプリに取り組んでいるので、待ち時間を実際に承認することはできません。
私は自分のタッチを処理するために最愛のtouchsBegan/Moved/Endedを使用しています。すべてが順調に進んでおり、(AudioUnitを使用して)トーンを合成し、(GLKitを使用して)指の下でグローを表示することができました。同時にヒットするノート/タッチが4〜7未満であれば、すべて正常に機能します。 、それからそれはおかしくなり、アプリを動かなくなってしまいます。
私は(GLKitインターフェースとシンセエンジン用に作成したインターフェースを使用して)多くの作業を行っているため、それを修正する方法が必要であることを理解しました。
私のコードは次のように構築されています:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
for(UITouch *touch in touches)
{
CGPoint lePoint = [touch locationInView:self.view];
doing some calculataions for synth engine.......
actually making the sound avilable to play through the interface........
then I start to create the sprite object for the glow
attaching it to the nsarray of the shapes
//rejoycing in the awesomness of the sound
adding the touch to the active touches array
}
}
touchesEndedでまったく逆のことをします。
それで、それをより良く機能させるために、GLKitのものにGCDを使用して、非同期で発生するようにしました。それは機能しましたが、アレイにないためにグローが画面に表示されたままになることがありました。 touchesEndedはそれを削除しようとしました。
だからそれはうまくいきませんでした、そして誰かが私を助けることができれば私はちょっと無知です、私は感謝するでしょう。