2013-11-11 1 views
1

Я хотел бы работать с размерами imgHelpBelow imageView background image, а не с источником этого изображения.Не удается получить размеры изображения в фоновом режиме в андроиде?

Вот imgHelpBelow ImageView XML:

<ImageView 
    android:id="@+id/imgHelpBelow" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/ImageView05" 
    android:layout_alignLeft="@+id/imgCaloriesBelow" 
    android:layout_alignRight="@+id/imgCaloriesBelow" 
    android:layout_marginBottom="19dp" 
    android:background="@drawable/bar_fill" 
    android:src="@drawable/bar_fill" /> 

Вот код:

private ImageView imgHelpBelow; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_dashboard); 

      imgHelpBelow = (ImageView)findViewById(R.id.imgHelpBelow); 

      imgHelpBelow.setDrawingCacheEnabled(true); 

      imgHelpBelow.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), 
      MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED)); 
      imgHelpBelow.layout(0, 0, imgHelpBelow.getMeasuredWidth(),imgHelpBelow.getMeasuredHeight()); 


    imgHelpBelow.buildDrawingCache(true); 
    Bitmap bitmap = Bitmap.createBitmap(imgHelpBelow.getDrawingCache()); 
    imgHelpBelow.setDrawingCacheEnabled(false); // clear drawing 

      int w = bitmap.getWidth(); 
    int h = bitmap.getHeight(); 

      Bitmap croppedBmp1 = Bitmap.createBitmap(bitmap, 0, 0, 120, h); 
} 

Ширина и высота я получаю от источника изображения, а не на ImageView фоне, где размеры должны быть больше, в результате растровое изображение croppedBmp1 создается из источника изображения, а не из фона изображения. Кажется, что вся эта процедура с DrawingCache не работала.

Изображение размещено в res/drawable-xxhdpi. Возможно, я должен поместить изображение в какую-нибудь другую папку с возможностью рисования.

Что следует добавить или изменить?

Пожалуйста, помогите мне ...

Большое спасибо :)

ответ

0

не это, как правило, имеет такой же размер, как IMAGESRC попытаться поставить фиксированное значение?

android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
+0

Растровое изображение, которое я создал, представляет собой фон изображения, поэтому возвращаемая ширина и высота должны быть изображения, потому что фоновое изображение заполняет его. – olegoro