2012-01-07 14 views
1

アンドロイド2.2および2.3デバイスアンドロイド4(ICS)と間違ってビットマップの幅と高さ

BitmapFactory.decodeResource(getResources(), R.drawable.my_original_drawable); 

上には、ソースのものより正確に同じサイズを有するビットマップを生成します。 Android 4搭載のGalaxy Nexus(ICS)では、生成されるビットマップは常に大きすぎます。たとえそうであってはならないにしても、縮尺は変わっています。

これは大きな問題です。誰かが同じことを経験しましたか?

+0

低、中、高濃度の3つのフォルダすべてにソースファイルがありますか? – dan

+0

いいえ私はdrawable-hdpiにそれらのバージョンが1つしかありません。 – mseo

+1

それを他のものにコピーすると、おそらく助けになります。 – dan

答えて

1

正確に同じ問題が経験され、ICSだけです。

私の回避策は、生のストリームを取得し、BitMapDrawable

InputStream inputStream = context.getResources().openRawResource(largePhotoDrawableId) 
BitmapDrawable photo= null; 
photo= new BitmapDrawable(resources,inputStream); 
1

これを試してみてください。

プットソースファイルを "RES /描画可能-xhdpi /" フォルダまたは "RES /描画可能sw720dp /" フォルダ内のより多くの助けのための

は、このリンクを読ん http://developer.android.com/guide/practices/screens_support.html

幸せなコーディング

+0

正しい方向です...しかし、私は大幅に私のアプリのサイズを大きくするだろうすべての解像度のグラフィックスを作成する必要があります。 – mseo

1

に変換することでした私は、これはかなり返事が遅れているけど、私は同じ問題を持っていたし、それを解決したので、私はあなたが知ってもらいたいです。 この問題を解決するには、すべてのリソースをdrawable-xhdpi、hdpi、mdpi ...などの対応するフォルダに入れます。

すべての画面密度で同じリソースを使用する場合は、それらをdrawable-nodpiに入れます。このようにして、すべてのデバイスがそのリソースをそのまま使用します。

普通の描画可能な状態に保つと、デフォルトのmdpiになり、より高いdpiのデバイスはリソースを画面に合わせて拡大します。

これは役に立ちます;

+0

+1の-nodpiヒント – Niels

関連する問題