2016-06-12 10 views
1

コンテンツページにImage要素があります。私はContentPageのコンストラクタでそれにMemoryStreamソースを割り当てたいと思います。これはSamsung Galaxy A3(Android 5.0.2)では正常ですが、Samsung Galaxy Note 3(Android 5.0)では何も表示されません(エラーも例外も画像もありません)。 Xamarin.Formsのバグですか?それとも私は何か悪いことをしますか?一部のAndroid搭載端末でImageSource.FromStream()が動作しない

コード:

Image image = new Image(); 
var path = "some/path/to/image.jpg"; 
var bytes = File.ReadAllBytes(path); //has correct byte array with correct length 
image.Source = ImageSource.FromStream(() => new MemoryStream(bytes)); 
+0

これをエミュレータで試してみてください。 – jzeferino

+0

API23エミュレータで試しましたが、展開に失敗しました。今私はAPI15を試しています。数分後にはまだ展開しています。私は決してAndroidのエミュレータと運がなかった... – Episodex

+0

@Episodexこのコードは依存関係サービスですか?つまり、 'Forms'コードの' File.ReadAllBytes'にどのようにアクセスしていますか? – SushiHangover

答えて

1

私は同じ問題を抱えています。

カメラの解像度を低く設定すると、画像は正常に動作しますが、解像度は< 9 Mpxで、画像は正常に動作します。 Androidのバージョンとデバイスに依存していますが、メモリ不足の例外です。

カメラで撮影した画像のサイズを変更しても機能します。

FFimageLoadingプラグインとCachedImageコントロールをインストールすることはできますが、私はイメージのサイズを変更するほうがよいのでテストしません。プラグインではアプリが大きくなります。

関連する問題