Webサービスからベース64でエンコードされた画像を取得し、ImageViewに表示するAndroidアプリを開発しています。画像はエミュレータで表示されますが、Androidタブレットでは表示されません
私の問題は、エミュレータで画像が正しく表示されていることですが、タブレット(Android 4搭載のタブレットASUS Transformer)で動作している場合、ImageViewを画像とともにロードすると消えてしまいます。
これは私がImageViewのをロードするために使用していたコードです:
ImageView imageView = (ImageView) this.findViewById(R.id.floor_map_view);
Bitmap image = BitmapFactory.decodeByteArray(result, 0, result.length);
imageView.setImageBitmap(image);
私はそれがエミュレータ上で正しくロードされ、プラス私が比較しまし言ったように、画像を、Webサービスから正常に取得されます私のWebサービスから送信された64バイトの文字列を受け取って一致させます。
これが私の活動のレイアウトです:何が起こっている可能性があります
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff">
<ImageView
android:contentDescription="floorMapView"
android:id="@+id/floor_map_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="#222222"
/>
</LinearLayout>
任意のアイデア?
ありがとうございます。
編集:BitmapFactory.OptionsオブジェクトのinSampleSizeを使用し、decodeByteArray呼び出しでこのイメージを使用すると、画像は表示されますが、期待されるよりも小さくなります。
をこの行を追加しますが、文字列または –
バイトのByteArray []、decodeByteArray必要に応じて名前が示すように、それ以外の場合は、コンパイルされないでしょう、バイト配列としてですパラメータ。 –