मैं यहां से Xamarin.Forms कैमरा नमूना का उपयोग कर रहा हूं - https://github.com/XForms/Xamarin-Forms-Labs-Samples/tree/master/XF.Labs.CameraSample मैं एक फोटो चुनने या लेने में सक्षम हूं।Xamarin.Forms कैमरे के साथ फोटो ले लो गलत अभिविन्यास और बैक बटन पर क्रैश दिखाता है
private async Task SelectPicture()
{
mediaPicker = DependencyService.Get<IMediaPicker>();
imageSource = null;
var mediaFile = await mediaPicker.SelectPhotoAsync(new CameraMediaStorageOptions
{
DefaultCamera = CameraDevice.Front,
MaxPixelDimension = 400
});
imageSource = ImageSource.FromStream(() => mediaFile.Source);
img.Source = imageSource;
}
private async Task TakePicture()
{
mediaPicker = DependencyService.Get<IMediaPicker>();
imageSource = null;
var mediaFile = await mediaPicker.TakePhotoAsync(new CameraMediaStorageOptions
{
DefaultCamera = CameraDevice.Front,
MaxPixelDimension = 400
});
imageSource = ImageSource.FromStream(() => mediaFile.Source);
img.Source = imageSource;
}
छवि के लिए कोड बस है
img = new Image
{
BackgroundColor = Color.White,
Aspect = Aspect.AspectFit
};
मुद्दों के एक जोड़े हैं:
पहले एक। आप एक फोटो ले सकते हैं या एक संग्रहीत एक का चयन कर सकते हैं और फिर इसे पृष्ठ पर दिखाएंगे। यदि आप एक फोटो चुनते हैं तो यह इसे सही ढंग से प्रदर्शित करता है, या तो चित्र या परिदृश्य। जब आप कोई फोटो लेते हैं, तो यह केवल लैंडस्केप मोड में प्रदर्शित होता है, इसलिए यदि चित्र चित्र में लिया गया था, तो छवि पक्ष पर दिखाई देती है। यह विनाशकारी नहीं है, लेकिन यह छवि को दिखाने के लिए बेहतर होगा कि यह कैसे लिया गया था।
दूसरा मुद्दा थोड़ा अधिक कठोर है, अगर आप कैमरे या छवि गैलरी में डिवाइस के बैक बटन दबाते हैं तो स्क्रीन खाली हो जाती है और फिर आपको एक संदेश मिलता है जिसमें ऐप ने जवाब देना बंद कर दिया है।
मैंने अभी तक एंड्रॉइड पर यह कोशिश की है। क्या किसी के पास कोई विचार है कि मैं उपरोक्त समस्याओं को कैसे हल कर सकता हूं?
संपादित करें: मैं वापस बटन पर क्रैश होने को ठीक करने में कामयाब रहे, लेकिन छवि अभी भी आईओएस
किसी को भी इस समस्या का समाधान किया? –
मुझे इन समाधानों को आजमाने का मौका नहीं मिला है, लेकिन यह केवल सैमसंग उपकरणों पर एक मुद्दा प्रतीत होता है। – user1667474