Предоставить равное пространство между ImageViews

Я пытаюсь добавить некоторые социальные изображения в моем приложении обо мне экран, но я столкнулся с проблемой предоставления равных промежутков между изображениями.

мои изображения выглядят так:

но я хочу, чтобы они выглядели так:

мой код:

<!--?xml version="1.0" encoding="utf-8"?-->
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/RelativeLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/about_screen">

 <linearlayout android:id="@+id/llSocialMediaContainer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentbottom="true" android:orientation="horizontal" android:paddingbottom="@dimen/bottum_padding">

 <!-- Facebook -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/facebook">

 <!-- Twitter -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/twitter">

 <!-- Google+ -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/google">

 <!-- Linkedin -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/linkedin">

 <!-- Blog -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/blog">

 <!-- Youtube -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/youtube">

 <!-- Email -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/mail">
 </imageview></imageview></imageview></imageview></imageview></imageview></imageview></linearlayout>

</relativelayout>
4 ответа

Там вы идете, изменяете код соответственно, узнаете о android:layout_weight это полезно в таких ситуациях:

<!--?xml version="1.0" encoding="utf-8"?-->
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal">

 <imageview android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/ic_launcher">

 <imageview android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/ic_launcher">

 <imageview android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/ic_launcher">

 <imageview android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:src="@drawable/ic_launcher">

 </imageview></imageview></imageview></imageview></linearlayout>


Пытаться


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


Используйте элемент в Linringayout между изображениями, чтобы добавить равное пространство. Вы можете назначить ширину, используя свойство weight LinearLayouts, чтобы получить одинаково разнесенные значки во всех различных форм-факторах.

Пример:

<linearlayout android:id="@+id/llSocialMediaContainer" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignparentbottom="true" android:orientation="horizontal" android:paddingbottom="@dimen/bottum_padding">

 <!-- Facebook -->

 <imageview android:layout_width="@dimen/social" android:layout_height="@dimen/social" android:src="@drawable/facebook">

 <space android:layout_width="15dp" android:layout_height="match_parent">
 <!-- Twitter -->

 </space></imageview></linearlayout>


установите свойство layout_margin изображения, чтобы дать пространство между ними.

licensed under cc by-sa 3.0 with attribution.