SORU
20 NİSAN 2010, Salı


UİİmagePickerController değil'dolgu ekran t

screenshot

Bu UİİmagePickerController için özel bir kaplama ekliyorum ve görünümü altında kalıcı siyah bir bar var. İşte denetleyicisi oluşturmak için benim kod.

- (UIImagePickerController *)imagePicker {
    if (_imagePicker) {
        return _imagePicker;
    }

    _imagePicker = [[UIImagePickerController alloc] init];
    _imagePicker.delegate = self;

    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
        _imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;

        _imagePicker.showsCameraControls = NO;

        _imagePicker.wantsFullScreenLayout = YES;
        _imagePicker.navigationBarHidden = YES;
        _imagePicker.toolbarHidden = YES;

    } else {
        _imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
    }

    return _imagePicker;
}

İade denetleyicisi kamera denetimleri saklamıyorum ne zaman bir yöntemdir görüntülenir ve gayet iyi (yani görüntüler tam ekran) çalışıyor.


Bu kod ile çalışıyor Ole önerisi için teşekkürler

// Resize the camera preview
        _imagePicker.cameraViewTransform = CGAffineTransformMakeScale(1.0, 1.03);

Yüksekliği %3'lük bir artış sadece iyi çalıştı. Ekranın alt kısmında özel bir araç çubuğu eklediğinizde artık pencereden görünen siyah bir bar var.

CEVAP
4 NİSAN 2013, PERŞEMBE


Sabit bir değer Ölçekleme burada kabul cevabı eskiden herkes muhtemelen iPhone 5 çıktığında öğrendim eminim iyi bir fikir değil.

İşte dinamik olarak ekran çözünürlüğüne göre harf boks ortadan kaldırmak için ölçek için bir kod parçası.

// Device's screen size (ignoring rotation intentionally):
CGSize screenSize = [[UIScreen mainScreen] bounds].size;

// iOS is going to calculate a size which constrains the 4:3 aspect ratio
// to the screen size. We're basically mimicking that here to determine
// what size the system will likely display the image at on screen.
// NOTE: screenSize.width may seem odd in this calculation - but, remember,
// the devices only take 4:3 images when they are oriented *sideways*.
float cameraAspectRatio = 4.0 / 3.0;
float imageWidth = floorf(screenSize.width * cameraAspectRatio);
float scale = ceilf((screenSize.height / imageWidth) * 10.0) / 10.0;

self.ipc.cameraViewTransform = CGAffineTransformMakeScale(scale, scale);

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Charles Renaud

    Charles Rena

    10 Kasım 2007
  • Huot Media

    Huot Media

    7 Mayıs 2010
  • ShayLoss

    ShayLoss

    5 Kasım 2009