2012-06-11 74 views
9

Cuối cùng tôi đã đóng đinh một lỗi treo UIImagePickerController khi quay video. Khi cài đặt trợ năng VoiceOver của iPhone được bật, máy ghi âm bị lỗi mà không bị lỗi khi gọi presentModalViewController.Cài đặt trợ năng VoiceOver của iPhone gặp sự cố khi quay video

Tôi đã không thành công cho đến nay trong việc đưa ra giải pháp thay thế. Có ai khác đã trải nghiệm điều này và có thể sửa chữa nó không?

+0

Phiên bản hệ điều hành nào? Phiên bản hệ điều hành nào không có trong đó? Bạn đã xem xét gửi báo cáo lỗi chưa? –

+0

Tôi đang gặp phải điều tương tự, nhưng chỉ khi showsCameraControls được đặt thành NO. – kamens

+1

Bạn nhận được hai sự cố hỗ trợ kỹ thuật với tài khoản nhà phát triển iOS của mình. Điều này nghe có vẻ như một thời gian cho nó. Nếu có một cách giải quyết khác, những người ở Apple sẽ biết. – Swizzlr

Trả lời

3

Như @kamens đề cập trong các ý kiến ​​trên, một cách giải quyết là bao gồm camera.showsCameraControls = NO trong một khối hoàn thành khi trình bày bộ điều khiển xem phương thức, như thế này:

[controller presentViewController:self animated:YES completion:^{self.showsCameraControls = NO;}]; 

Tuy nhiên, với giải pháp này, các camera điều khiển đèn flash trong giây lát khi máy ảnh được trình bày, sau đó chúng biến mất. Rõ ràng là không lý tưởng khi các điều khiển thực sự cần phải được ẩn. Cách giải quyết khác là đặt camera.showsCameraControls = OFF ... thậm chí ít lý tưởng hơn.


@quellish, đây là sản phẩm từ sự sụp đổ:

*** -[PLCameraToggleButton setAccessibilityValue:]: message sent to deallocated instance 0x4a330b0 

@kamens, đây là đoạn code tôi đang sử dụng để thiết lập các mediaTypescaptureMode:

tmpCamera.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeMovie]; 
tmpCamera.cameraCaptureMode = UIImagePickerControllerCameraCaptureModeVideo; 
+0

Thật tuyệt vời! Sau khi chi tiêu 1 ngày hoàn thành, tôi đã tìm thấy câu trả lời của bạn. Cảm ơn rất nhiều, nó đã làm việc cho tôi! –

1

Như @james đề cập, điều này xảy ra trong iOS 5.1 khi:

  • Sử dụng picker.showsCameraControls = NO
  • Sử dụng animated:NO trong lệnh gọi [viewController presentViewController:picker animated:YES completion:nil];
  • Các tùy chọn khả năng tiếp cận VoiceOver được kích hoạt.

... , đáng kể, khi chỉ có quy định cụ thể các bộ phim như các loại phương tiện truyền thông chấp nhận chọn:

  • picker.mediaTypes = [NSArray arrayWithObject: (NSString *) kUTTypeMovie];

Tuy nhiên, tôi đã có thể khắc phục điều này bằng cách thay đổi mediaTypes dòng trên để:

picker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:picker.sourceType]; 

... mà hoạt động tốt cho rằng các điều khiển camera mặc định được ẩn đi và tôi có thể lập trình kiểm soát xem có bắt đầu quay video hoặc chụp ảnh hay không.

Tôi không xác nhận nguyên nhân gây ra sự cố này.

Các vấn đề liên quan