2013-09-05 3 views
-2

, поэтому я пытаюсь научиться делать вещи с приложениями Android, и у меня есть ImageView с именем (id) «img_BarHealth», который я инициализирую как «160dp».Как изменить ширину ImageView в Android SDK

Я сделал кнопку, и подключили его к этой функции:

public void onBack(View view) { 
    //Get link to the object. 
    ImageView bar_Health = (ImageView) findViewById(R.id.img_BarHealth); 

    //This is what I want done. (However this value is not accessable it seems) 
    bar_Health.width = "80dp"; 
} 

Таким образом, любые предложения? . =)

+0

Я думаю, что это уже здесь, что вы need: http://stackoverflow.com/questions/3144940/set-imageview-width-and-height-programmatically –

ответ

0

Использование getLayoutParams() ширина

ImageView bar_Health = (ImageView) findViewById(R.id.img_BarHealth); 
    bar_Health.getLayoutParams().width = 80; 
+0

А, спасибо. Как смущать это x) –

0

Вы должны вызвать getLayoutParams().width, а затем вам нужно преобразовать dip to pixel size:

public int convertDipToPixels(float dips) 
{ 
    return (int) (dips * getResources().getDisplayMetrics().density + 0.5f); 
} 

Что-то рабочий был бы близок к:

bar_Health.getLayoutParams().width = convertDipToPixels(80); 
Смежные вопросы