2012-08-20 2 views
1

У меня есть 5 изображений, которые я хочу разместить в кнопках изображения внутри горизонтали LinearLayout. Изображения сохраняются на разных размерах на диске, но при размещении в макете я хочу, чтобы они имели одинаковую высоту, но в разных весах 0,5,1,1,1,0,5 (что означает весовую сумму макета 4). Я судимый используя этот код и он не работает:создать масштабированные изображения в xml в android

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:weightSum="4" > 

    <ImageButton 
     android:id="@+id/scrollLeft" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/left" 
     android:layout_weight="0.5" /> 

    <ImageButton 
     android:id="@+id/dog" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/dog" 
     android:layout_weight="1" /> 

    <ImageButton 
     android:id="@+id/fish" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/fish" 
     android:layout_weight="1" /> 

    <ImageButton 
     android:id="@+id/cat" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/cat" 
     android:layout_weight="1" /> 

    <ImageButton 
     android:id="@+id/scrollRight" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:src="@drawable/right" 
     android:layout_weight="0.5" /> 

</LinearLayout> 

Существует ли какие-либо параметры layout_width и layout_height, что я могу изменить, что будет получить эту работу, или мне нужно сделать, чтобы создать уменьшенное растровое изображение из кода Java для каждой из кнопок? Спасибо!

ответ

0

попробовать определения и ту же высоту, а затем вы масштабировании, чтобы сохранить соотношение

<ImageView 
    .... 
    android:layout_height="match_parent" 
    android:scaleType="centerInside" 
    .... /> 

EDIT используя match_parent для высоты сделает ImageButtons имеют одинаковую высоту и держать соотношение масштаба с помощью scaleType

+0

Это будет проблематично, так как я хочу, чтобы изображения правильно соответствовали всем размерам телефонов. –

+0

Я обновил свой ответ .. это должно нормально работать –

+0

, если вы хотите иметь одинаковую высоту и поддерживать соотношение на th в то же время вам придется изменить ширину тоже –

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