내 라이브러리에서 사진을 선택하고, 처음에 나는 그것을 자르고 최대 300x300으로 크기를 조정하려면이 사진과 함께 무언가를하고 싶다. 내가 큰 사진을 선택할 때까지는 모든 것이 괜찮습니다.PhotoChooserTask 캔트 작물 큰 사진
큰 이미지 (10000x6000)를 선택하면 PhotoChooserTask
은 아무 것도하지 않습니다 (사용자의 관점에서 볼 때). PhotoChooserTask
은 응용 프로그램이 아닌 단지 충돌합니다. 그런 다음 다른 하나를 선택하려고하면 "Not allowed to call Show() multiple times before an invocation returns"
예외가 발생합니다.
내 생각에 PhotoChooserTask
에 이전 개체가 아직있는 것 같습니다. PhotoChooserTask
을 처분하거나 지우는 방법을 모르겠습니다.
추신. 설정하지 않고
chooser.PixelHeight = 300;
chooser.PixelWidth = 300;
사진이 설정되며 모든 사항이 정상입니다.
PS2.
삼성 아 티브 S는 문제가되지 않습니다. 만 1320, 520 및
PhotoChooserTask chooser = new PhotoChooserTask();
try
{
chooser.ShowCamera = true;
chooser.PixelHeight = 300;
chooser.PixelWidth = 300;
chooser.Completed += (s, result) =>
{
if (result.Error != null){ return; }
if (result.ChosenPhoto != null)
{
var bitmap = new BitmapImage();
bitmap.SetSource(result.ChosenPhoto);
Service.uploadPhoto(receiver, (ImageSource)bitmap);
}
};
chooser.Show();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
사진이 크고, 높이 디버거가 이미지 크기는 아마 문제가 내부 chooser.Completed
네,하지만 내가 츄에 PixelHight 및 PixelWidth 설정하지 않는 경우 (그게 전부 수단을 PhotoChooserTask 내에서 이미지 크기를 조정/초기 작물을 해달라고는) 다음 모든 것이 괜찮습니다. 나는 이렇게 큰 사진을 설정할 수는 없지만 사용자가 모든 것을 할 수 있으므로이 사진으로 PhotoChooserTask를 처리하여 사용자가 다른 사진을 선택할 수있게 할 수 있습니까? 왜냐하면 PhotoChooserTask를 사용하면 사용자가 응용 프로그램을 다시 시작할 때까지 PhotoChooserTask를 다시 사용할 수 없기 때문입니다. –