私はクレイジーのように見ています。ボリュームボタンの長押しと短押し(スナップチャット、短押しの写真、長押しの録画ビデオなど)でカスタムアクションを実行する必要がありますが、失敗しました。ボリュームボタンの長押しと短押しの検出 - iOS
私はhttps://github.com/jpsim/JPSVolumeButtonHandler を使用しました。ボリュームボタンの押下イベントを検出できました。しかし、非常に頑張った後、長いプレスと短いプレスを検出するのに失敗しました。
も、私はこの上の助けを必要としてください私のコード
//Volume button handler
self.volumeButtonHandler = [JPSVolumeButtonHandler volumeButtonHandlerWithUpBlock:^{
// Volume Up Button Pressed
[self onVolumeUp];
} downBlock:^{
// Volume Down Button Pressed
}];
-(void)onVolumeUp {
if(self.volButtonTimer) {
secondsElapsed = 1; //To detect long press
[self.volButtonTimer invalidate];
}
self.volButtonTimer = [NSTimer scheduledTimerWithTimeInterval:0.5
target:self
selector:@selector(onTimerFire)
userInfo:nil
repeats:NO];
}
-(void)onTimerFire {
NSLog(@"Long Press %d",secondsElapsed);
if (secondsElapsed > 1)
{
//Do Something
}
else secondsElapsed = 0;
}
Detect iPhone Volume Button Hold? (iOS 8)
を参照してください。グーグルで検索したが失敗した。スナッチャッチがそれをしている場合、その実行可能なことを意味します。
ありがとうございました
ああ、それらのSnapchat - ルールブレーカー! –
解決策を見つけました。私の編集した答えをご覧ください。 – Timo
はい、このような機能も実装しましたが、dispatch_after()メソッドを使用しました。 私はSnapchatをAppのように作っています。 AppstoreでのSnapchat禁止の声を集める必要があります) –