2013-07-07 3 views
0

У меня есть файлы изображений, которые будут использоваться в Android в ImageViews. Теперь для MDPI. Я создал новые ImageViews, но IDE делает их меньше, чем мне нужно, поэтому для MDPI у меня меньшее изображение. Как вернуть изображение нормального размера? Если изменить вручную этот файл в res/drawable-mdpi, ничего не происходит, в макете изображение мало. Возможно, я могу каким-то образом удалить эти ресурсы из всех файлов, используя его? Почему замена изображения в res/drawable-mdpi ничего не дает?Ошибка с размером ImageView в Android

Первое изображение идет здесь. Необходимо добавить 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> 
+0

Пожалуйста, добавьте фрагмент кода макета xml? – Ronnie

+0

Все же удаленные файлы в папках hdpi, xhdpi и xxhdpi и скопированы снова. Первое изображение работает хорошо. Теперь мне нужно вставить 5 изображений каждый до предыдущего. Как я могу это сделать? Если просто вставить новый ImageView, размеры меняются. – user2543953

+0

Хорошо. Добавьте весь файл макета. Трудно сказать что-либо только из тега imgview – Ronnie

ответ

0

хранить все мои изображения в каталоге MDPI, а затем изменять их размером для таблеток, используя такой код:

 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); 
      } 
     } 

Надеется, что это помогает.

+0

Спасибо, другие резолюции - это еще один шаг. Можете ли вы посоветовать, как поместить изображение прямо под предыдущим с тем же выравниванием и когда будут сохранены их псевдонимы? – user2543953

+0

Да, но это другой вопрос. – IanB

 Смежные вопросы

  • Нет связанных вопросов^_^