AVCam не в полноэкранном режиме

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

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

Спасибо.


person diogo.appDev    schedule 10.12.2013    source источник
comment
Вы знаете, как сохранить изображение того же размера, что и превью?   -  person Matrosov Alexander    schedule 04.09.2014


Ответы (2)


Вам нужно использовать свойство videoGravity файла AVCaptureVideoPreviewLayer.

Взгляните на документ. Вам нужно использовать: AVLayerVideoGravityResizeAspectFill

Редактировать:

Исходя из этого, решение, основанное спрашивающим:

- (void)setSession:(AVCaptureSession *)session {
    ((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill;
    ((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds;
    [(AVCaptureVideoPreviewLayer *)[self layer] setSession:session];
}
person dcorbatta    schedule 10.12.2013
comment
я исправил это, но после того, как я сделал фото, фотография имеет тот же размер, что и вид - person Matrosov Alexander; 03.09.2014
comment
Но вопрос по кадру превью. Пожалуйста, задайте свой вопрос. - person dcorbatta; 04.09.2014

Исправлено с помощью следующего метода в AVCamPreviewView.

- (void)setSession:(AVCaptureSession *)session {
    ((AVPlayerLayer *)[self layer]).videoGravity = AVLayerVideoGravityResizeAspectFill;
    ((AVPlayerLayer *)[self layer]).bounds = ((AVPlayerLayer *)[self layer]).bounds;
    [(AVCaptureVideoPreviewLayer *)[self layer] setSession:session];
}
person diogo.appDev    schedule 10.12.2013
comment
если ваш ответ был основан на моем ответе, почему мой ответ не правильный? - person dcorbatta; 13.12.2013
comment
потому что у вас не было решения. отметит ваш как правильный, не волнуйтесь. :) - person diogo.appDev; 15.12.2013
comment
Спасибо, нет проблем. :) Я отредактировал свой ответ, включив в него ваш результат. - person dcorbatta; 15.12.2013