2015-03-09 6 views
-1

enter image description here Это мой код для создания динамических изображений. Изображение выравнивается очень хорошо, но мне нужно сделать его маленьким. Как масштабировать изображение?Как масштабировать изображение (динамическое изображение)

Это в LinearLayout:

for(int i=0;i<value1;i++) { 
    ImageView image = new ImageView(Home.this); 
    image.setImageResource(R.drawable.bulb); 
    image.setScaleX(1); 
    image.setScaleY(1); 
    image.setScaleType(ImageView.ScaleType.MATRIX); 
    rR.addView(image); 
} 

Это мой код для создания динамических imageviews. Изображение выравнивается очень хорошо, но мне нужно сделать его маленьким. Как я могу масштабировать изображение?

+0

Как вы можете иметь код внутри LinearLayout, что вы имеете в виду под этим? – Cat

+0

Кроме того, похоже, что вы пытаетесь сделать то, что обычно требуют адаптеры: http://developer.android.com/guide/topics/ui/layout/gridview.html. Вы можете использовать адаптеры для создания списков ListViews (например, в контактном приложении) и GridViews (например, приложение галереи). – Cat

+0

actulay макет линейный. Я просто пытаюсь масштабировать размер изображения –

ответ

0

Вы можете установить размер ImageView в зависимости от размера экрана, как 20% от высоты.

Display display = getWindowManager().getDefaultDisplay(); 
    int height = display.getHeight(); 
    int width = display.getWidth();           
    float mReqPercentages =20.0; 
    float mCalculatedWidth = (mReqPercentages/100) * height; 

    image.getLayoutParams().height = (int) (mCalculatedWidth * 1.5); 
    image.getLayoutParams().width = (int) mCalculatedWidth; 
0

Укажите правильную высоту и ширину динамического изображения. Пожалуйста, попробуйте ниже код, который вам будет полезен.

for (int i = 0; i < 3; i++) 
    { 
     ImageView image = new ImageView(ImageScalling.this); 
     image.setImageResource(R.drawable.ic_launcher); 
     image.setLayoutParams(new LinearLayout.LayoutParams(200, 200));   
     image.setScaleType(ImageView.ScaleType.FIT_XY); 
     rR.addView(image); 

    } 

Я установил ширину и высоту 200. Если вы хотите, чтобы показать небольшое изображение затем установить менее 200.

+0

Thnx много! Я получил ответ! :) –

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