2013-12-10 1 views
7

Я интегрировал AVCam в моем приложении для iOS. Проблема в iPhone 4, рамка предварительного просмотра не является полноэкранным, у нее есть свободные боковые границы ...AVCam не в полноэкранном режиме

Как я могу это решить?

Спасибо.

+0

Знаете ли вы, как сохранить изображение большего размера с размером предварительного просмотра? –

ответ

22

Необходимо использовать свойство videoGravity объекта AVCaptureVideoPreviewLayer.

Посмотрите на doc. Вы должны использовать: AVLayerVideoGravityResizeAspectFill

Edit:

Основываясь на том, что решение основано на спрашивающего является:

- (void)setSession:(AVCaptureSession *)session { 
    ((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill; 
    ((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds; 
    [(AVCaptureVideoPreviewLayer *)[self layer] setSession:session]; 
} 
+0

исправил его. большое спасибо! –

+0

Слава богу !! Я застрял на этом около 2 дней !!! – vinylDeveloper

+0

Я исправил его, но после того, как сделаю фотоснимок того же размера, что и у вида –

3

Fixed его следующим способом в AVCamPreviewView.

- (void)setSession:(AVCaptureSession *)session { 
    ((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill; 
    ((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds; 
    [(AVCaptureVideoPreviewLayer *)[self layer] setSession:session]; 
} 
+0

, если ваш ответ был основан на моем ответе, почему мой ответ не правильный? – dcorbatta

+0

, потому что у вас не было решения. будет отмечать ваш как правильный, не волнуйтесь. :) –

+0

Спасибо, без проблем. :) Я отредактировал свой ответ, чтобы включить ваш результат. – dcorbatta