Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
RafaelRS
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 18
#1

Как растягивать фон в layout только по горизонтали - Android

17.12.2013, 21:08. Просмотров 1207. Ответов 2
Метки нет (Все метки)

Есть layout, у него установлена картинка в качестве фона. Проблема в том, что картинка теряет пропорции при растягивании. Надо, чтобы картинка растягивалась только по горизонтали, а не вместившееся по вертикали обрезалось.

Единственное, что пока приходит на ум, создать потомок layout в котором в методе onMeasure устанавливать фон из Drawable который предварительно обрезать через ClipDrawable. Какой вариант можете еще посоветовать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2013, 21:08     Как растягивать фон в layout только по горизонтали
Посмотрите здесь:

Как перебрать все дочерние элементы некого Layout Android
Как правильно размещать элементы View на Layout Android
Как получить layout с другого пакета? Android
Как программно добавить элемент в уже существующий layout? Android
Android Как растянуть 3 кнопки по ширине layout?
Можно растягивать Layout пальцами? Android
Android Добавить layout на layout
Android Layout как новый Activity
Android Фон jpg для layout
Как из activity_main_drawer открыть layout файлы? Android
Android Как управлять касанием на пустой области Layout?
Фон activity или layout Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GukZiLLA
35 / 35 / 2
Регистрация: 30.11.2013
Сообщений: 102
17.12.2013, 22:26     Как растягивать фон в layout только по горизонтали #2
Можно, как вариант, на заднем плане разместить ImageView и задать ему scaleType = centerCrop
RafaelRS
1 / 1 / 0
Регистрация: 18.11.2013
Сообщений: 18
17.12.2013, 22:42  [ТС]     Как растягивать фон в layout только по горизонтали #3
В принципе так и сделал. С обрезкой какой то геморойный вариант, хотя может я и не умею его готовить
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/background"
        android:scaleType="centerCrop" />
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:gravity="center_vertical">
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:src="@drawable/popup" /></LinearLayout>
 
</RelativeLayout>
Yandex
Объявления
17.12.2013, 22:42     Как растягивать фон в layout только по горизонтали
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru