特定のビュー コントローラーの背景を設定して、ライブ カメラ ビューを表示することはできますか? もしそうなら、これを可能にするために私を正しい方向に導くことができますか?
5947 次
3 に答える
9
はい、もちろん可能です。ライブ カメラ フィードを UIView に埋め込むことができ、好きな場所に配置できます。
ここを読むことから始めます: AVFoundation リファレンス- これはあなたのフレームワークです
あなたが探している特定のクラスはAVCaptureVideoPreviewLayer です
AVCaptureSessionと連携して動作する
そして、これはあなたが必要とするすべてをカバーするプロジェクトの例です: AVCam
于 2013-02-10T02:03:26.730 に答える
8
輸入:
#import <AVFoundation/AVFoundation.h>
カメラ ビューをコントローラーのビューに追加するには、次のコードを に追加しますviewDidLoad
。
AVCaptureSession *session = [[AVCaptureSession alloc] init];
session.sessionPreset = AVCaptureSessionPresetHigh;
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
NSError *error = nil;
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error:&error];
[session addInput:input];
AVCaptureVideoPreviewLayer *newCaptureVideoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:session];
newCaptureVideoPreviewLayer.frame = self.view.bounds;
[self.view.layer addSublayer:newCaptureVideoPreviewLayer];
[session startRunning];
于 2015-06-26T15:48:32.090 に答える
3
あなたの最善の策は、 AVCam と呼ばれるこのアップルのサンプル コードをつかんで理解することだと思います。AVCaptureVideoPreviewLayer を作成する方法をコードで確認できます。これを、「背景」として使用する UIView のサブレイヤーとして挿入します。
それが機能するようになると、その UIView はビュー階層の他の部分とまったく同じになります。バックグラウンド UIImageView のように扱うことができます (ただし、より多くのバッテリー パワーを消費します)。
于 2013-02-10T01:59:33.353 に答える