당신은 Xamarin.Forms.ImageSource
에서 FromStream
방법을 찾을 수 있습니다. 요구 사항에 따라 DependencyService
을 통해 WriteableBitmap
양식 uwp 프로젝트의 스트림을 가져올 수 있습니다. PCL의 ImageSource
으로 변환하십시오.
예 :
인터페이스
public interface IStreamToImage
{
Task GetStreamFormUWP(Action<Stream> StreamBlock);
}
구현
public async Task GetStreamFormUWP(Action<Stream> StreamBlock)
{
await Window.Current.Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() => {
.......
using (Stream stream = MyBitmap.PixelBuffer.AsStream()){
await stream.WriteAsync(sourcePixels, 0, sourcePixels.Length);
StreamBlock(stream);
}
});
}
사용
await DependencyService.Get<IStreamToImage>().GetStreamFormUWP((stream) =>
{
image.Source = ImageSource.FromStream(() => stream);
});
감사합니다. Nico, 사실 저는 비슷한 것을 시도하고있었습니다. 'Stream str = bm.PixelBuffer.AsStream(); var ms = 새 MemoryStream(); str.CopyTo (ms); '그리고 나서 :'Xamarin.Forms.ImageSource.FromStream (ms); 'Xamarin Forms 이미지는 항상 비어 있습니다. – flix
@fix 나는 위의 대답과 비슷한 문제가있다. 그리고 Nico는 soure'PropertyChanged'가 set 값일 때 호출되지 않았다고 말했다. 버그 일 수 있습니다. – CoCaIceDew
이 해결 방법을 찾았습니까? – flix