ビューの下部にツールバーがあります。Scan と呼ばれる UIBarButton があり、誰かが指を押し下げているときと持ち上げたときを検出する必要があります。
UIBarButton は UIControl を継承しているため、これを検出できませんでした。回避策として、非表示の UIButton を作成してツールバーの上に配置し、UIBarButton の代わりにそこからのタッチを検出するだけにしました。
これは、ツールバーがどこにあるかを検出できない場合に、モーダル ビュー (UITabBar を非表示にする) としてビューを表示するまでは正常に機能します。ツールバーの上をタッチすると、正常に動作します。
これがスクリーンショットです。(見えないボタンは赤く色付けされ、テストのために背が高くなるように引き伸ばされています)
下のスクリーンショットでは、ツールバーの場所をタッチしても何も起こりません。しかし、その上で赤くなっているところは完全に機能します。
これが私のコードの一部です。
- (IBAction) scanTouchUp:(id)sender {
[linea barcodeStopScan:nil];
}
- (IBAction) scanTouchDown:(id)sender {
[linea barcodeStartScan:nil];
}
これらの方法は、それぞれ「タッチダウン」と「タッチアップ インサイド/アウトサイド」に付属しています。
どんな助けでも大歓迎です。