2013-10-07 4 views
0

Я новичок в программировании на Android. У меня проблема масштабирования ImageButtons на разные разрешения экрана. Я сделал разные размеры изображений на основе dpi и поместил их в hdpi (120px * 72px, 160dpi), mdpi (80px * 48px, 160dpi) и xhdpi (160px * 96px, 160dpi) Но на экранных разрешениях, таких как 1280x720, есть немного места на правой стороне. Я пытался что-то вроде:Установка изображений в разные размеры экрана

android:scaleType="fitXY" 
android:scaleType="centerInside" 
android:adjustViewBounds="true" 

, но ничего не получалось. Кроме того, я не совсем уверен, что они делают. Как я уже сказал, я новичок в android.

https://www.dropbox.com/sh/dmtcn4lxyxxh5wt/vpq9pBMOSl

<ImageButton 
    android:id="@+id/imageButtonsearch" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_toRightOf="@+id/imageButtonshare" 
    android:background="@null" 
    android:scaleType="centerInside" 
    android:src="@drawable/selector_search" 
    android:adjustViewBounds="true" /> 

Заранее спасибо

+0

Не могли бы вы опубликовать снимок экрана и прояснить «пространство», которое у вас есть. –

+0

Нажмите на ссылку для удаления. – mind

+0

Кстати, этот скриншот сделан из эмулятора Nexus 4. – mind

ответ

1

Вы должны использовать LinearLayout и чем установить layout_weight Аттрибут все IMAGEBUTTON в до 0,25 Linearayout должен находиться в нижней части родителя.

Нравится это;

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:orientation="horizontal"> 

    <ImageButton 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.25" 
     android:src="@drawable/ic_launcher"/> 

    <ImageButton 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.25" 
     android:src="@drawable/ic_launcher"/> 

    <ImageButton 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.25" 
     android:src="@drawable/ic_launcher"/> 

    <ImageButton 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="0.25" 
     android:src="@drawable/ic_launcher"/> 

</LinearLayout> 

+0

Есть ли разница между dp и dip? – mind

+0

0,25, потому что у нас есть 4 кнопки вправо? На следующей странице у меня будет 2 кнопки, я должен использовать там 0,5? – mind

+0

dp равен dip, и если у вас есть 2 кнопки, чем вы должны использовать 0.5 – nurisezgin

0

Установите layout_width атрибут "fill_parent" и убедитесь, что scaleType является fitXY

+0

Спасибо. Я собираюсь попробовать это. – mind

0

Используйте атрибут равным весом в наших ImageButtons. Он будет занимать пространство по сравнению с размерами экрана и использовать dp not dip.

+0

Итак, ваш ответ подобен Нуриззгину? – mind

+0

Да, я согласен с ним, но я предлагаю вам использовать dp вместо dip. –

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