picker.showsCameraControls = NO;
picker.cameraOverlayView = someView;
showCameraControlsにカスタムビューを追加すると、カメラと録画の間でiphoneスイッチのネイティブアプリのようにモードを切り替えるにはどうすればいいですか?それはどうすればいい? ヘルプ!UIImagePickerControllerのカスタムコントロールで異なるモード間でスイッチを切り替える方法は?
picker.showsCameraControls = NO;
picker.cameraOverlayView = someView;
showCameraControlsにカスタムビューを追加すると、カメラと録画の間でiphoneスイッチのネイティブアプリのようにモードを切り替えるにはどうすればいいですか?それはどうすればいい? ヘルプ!UIImagePickerControllerのカスタムコントロールで異なるモード間でスイッチを切り替える方法は?
Thisサンプルプロジェクトでは、UIImagePickerControllerの独自のカスタムオーバーレイを作成する方法と、その使用方法を示します。 UIImagePickerControllerの各プロパティとメソッドの詳細については、hereを参照してください。希望が助けてくれる!
私はそれを読むことができます、あなたはいくつかのコードや構造で私を導くことができますか、私はUIImagePickerControllerを継承する必要がありますか? –
サンプルプロジェクトをダウンロードして試してみました。基本的にUIImagePickerControllerを使用するために必要なすべてのコードがあります。 AVCaptureSessionsを見ることでカメラをより深く知ることができますが、これははるかに多くの作業を必要とします。 – msgambel
カスタムビューでは、ピッカーをターゲットに設定してtakePictureメソッドを1つ設定します。その後、別のボタンやスイッチがありますが、カスタムモードに切り替えるには、スナップを開始/停止するボタンが1つあります。このボタンは、ターゲット(自分がピッカーを提示したビューコントローラとしての自己)とカスタムのtoggleSnappingメソッドのための自己を持つ必要があります。各写真が撮られたときに通知を受けるには、画像ピッカーの代理人として自分自身を設定する必要もあります。ああ、スナップが現在アクティブかどうかを追跡するBOOLインスタンス変数。次に、あなたのtoggleSnapping方法は、次のようなものになります:
- (void)toggleSnapping
{
isSnapping = !isSnapping; // (this will reverse NO to YES and vice-versa)
[picker takePicture]; // starts taking 1st picture, delegate will take care of rest
if (isSnapping) {
// configure your button to show stop icon
} else {
// configure your button to show start snapping icon
}
}
をそして、あなたはあなたが単にisSnappingが現在YESの場合は別の画像を開始するピッカーのデリゲートメソッドを実装する必要があるでしょう:
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
// save the snapped picture to the camera roll
if (isSnapping) { // if burst mode is on, take another picture
[picker takePicture];
}
}
だから明確に取得することをここでは、カメラのカスタムモードを作成しますか?このカスタムモードで何をしたいのですか? –
私は画像を撮ってアルバムに保存するために2つのモードが必要です、保存ボタンをクリックするといくつかのスナップと一連の画像を作成します –
このアプリの唯一の違いは、ビデオとフォトモードの間で、写真と爆風を交換することができます。ビデオはありません。ブラストモードが選択されると、アプリはボタンの1回の押下で複数の写真を撮る。 3〜4秒でアプリは遅くならないので、バーストモードの負荷を処理するために余分なリソースを割り当てる必要があります。 –