0

我有一些图像文件,将在 Android 中的 ImageViews 中使用。现在为 MDPI。我创建了新的 ImageView,但 IDE 使它们比我需要的要小,所以对于 MDPI,我有一个更小的图像。如何返回正常大小的图像?如果在 res/drawable-mdpi 中手动更改此文件,则不会发生任何事情,在布局中图像很小。也许我可以以某种方式从所有使用它的文件中删除这些资源?为什么替换 res/drawable-mdpi 中的图像什么也没有?

第一张图片在这里。需要在它下面添加4。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#45010D">

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/radio" />
    <ImageView
        android:id="@+id/imageView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/???" /> // here ??? must be the name of second image and it must be under the first.

    </LinearLayout>
4

1 回答 1

0

I store all my images in the MDPI directory and then resize them for tablets using code like this:

        if (isTablet(getActivity())){  // tablets only
           debugLog( "display tablet image="+imagename);
           int resID = getResources().getIdentifier(imagename,"drawable", getActivity().getPackageName());                       // the corresponding resource id
           if (resID != 0) {
              Bitmap bmp=BitmapFactory.decodeResource(getResources(), resID);
              int width=480;
              int height=300;
              Bitmap resizedbitmap=Bitmap.createScaledBitmap(bmp, width, height, true);
              ImageView imageView = (ImageView) getActivity().findViewById(R.id.tablet_image);  // the imageview to change
              //imageView.setImageResource(resID);
              imageView.setImageBitmap(resizedbitmap);
           }
        }

Hope this helps.

于 2013-07-07T14:49:10.080 回答