ใน iOS 8 ฉันมีปัญหาในการจับภาพจากกล้องจนถึงตอนนี้ฉันกำลังใช้รหัสนี้สำหรับ
UIImagePickerController *controller=[[UIImagePickerController alloc] init];
controller.videoQuality=UIImagePickerControllerQualityTypeMedium;
controller.delegate=(id)self;
controller.sourceType=UIImagePickerControllerSourceTypeCamera;
[self presentViewController:controller animated:YES completion:nil];
แต่ใน iOS 8 ฉันได้รับสิ่งนี้:
Snapshotting a view that has not been rendered results in an empty snapshot. Ensure your view has been rendered at least once before snapshotting or snapshot after screen updates.
ฉันได้ลองด้วยวิธีการแก้ปัญหาที่โพสต์นี้ด้วย
@property (strong,nonatomic)UIImagePickerController *controller;
_controller=[[UIImagePickerController alloc] init];
_controller.videoQuality=UIImagePickerControllerQualityTypeMedium;
_controller.delegate=(id)self;
_controller.sourceType=UIImagePickerControllerSourceTypeCamera;
_[self presentViewController:controller animated:YES completion:nil];
และนี่
...
controller.modalPresentationStyle=UIModalPresentationFullScreen;
or
controller.modalPresentationStyle=UIModalPresentationCurrentContext;
...
และนี่
double delayInSeconds = 0.1;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
[self presentViewController:controller animated:YES completion:nil];
});
และนี่
[self presentViewController:controller animated:YES completion:NULL];
และนี่
[self presentViewController:controller animated:YES completion:^{
}];
ความคิดใด ๆ
dispatch_async(dispatch_get_main_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
ซึ่งฉันเปลี่ยนเป็นdispatch_async(dispatch_get_main_queue(), ^{