Фон Android App: использование нескольких изображений

У меня есть фоновое изображение, разделенное на три отдельных изображения:

backgroundTop.png backgroundMiddle.png backgroundBottom.png 

Как мне поступить в фоновом режиме в Android-приложении, в котором верхнее изображение отображается в верхней части приложения, а нижнее изображение внизу, а среднее изображение чередуется между ними? Это, конечно же, будет зависеть от того, сколько контента загружено на экране – как на веб-страницах.

Другими словами, общее количество раз, когда среднее изображение выгравировано, будет зависеть от того, что находится на экране.

Я видел решение для реализации облицовочного фона из одного изображения здесь: Как сделать фоновое изображение приложения Android

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

Ссылки на примеры ниже, чтобы вы знали, что я имею в виду:

http://rockfreaks.net/images/reviewPageTop.png

http://rockfreaks.net/images/reviewPageMiddle.png

http://rockfreaks.net/images/reviewPageBottom.png

Подумайте, что вы можете попробовать комбинировать список слоев (возможно установить вставки для слоев) с выгравированным битовым рисунком, который помещается в качестве среднего слоя и расположен с соответствующими вставками.

Что-то вроде этого:

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/page_top" /> <item android:insetTop="@dimen/page_top_height" android:insetBottom="@dimen/page_bottom_height" > <bitmap android:src="@drawable/page_middle_tile" android:tileMode="repeat" /> </item> <item android:drawable="@drawable/page_bottom" /> </layer-list> 

Но все зависит от вашего макета.

Установите фон как среднее изображение и нарисуйте его. (Как в примере, который вы показываете)

Создайте представление заголовка, которое вы вставляете вверху каждой страницы.

Создайте представление нижнего колонтитула, которое вы вставляете внизу каждой страницы.

И ваш контент посередине.

Я сделал здесь плоский файл, но вы можете легко представить, как реорганизовать его в includes , или что бы ни требовало ваше приложение.

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#00FF00" > <LinearLayout android:layout_width="match_parent" android:layout_height="100dip" android:layout_alignParentTop="true" android:background="#FF0000" /> <!-- Your content --> <LinearLayout android:layout_width="match_parent" android:layout_height="100dip" android:layout_alignParentBottom="true" android:background="#0000FF" /> </RelativeLayout> 
  • Красный = заголовок
  • Green = Tiles (который будет унаследован от вашей темы)
  • Синий = Нижний колонтитул

Введите описание изображения здесь

Попробуйте что-то вроде этого:

Верх и низ в двух макетах с android:gravity="TOP" и "BOTTOM" . Эти два макета настроены с помощью android:background="@drawable/xxx.png"

Для центра либо используйте свое решение, либо, возможно, используйте ScrollView.

Intereting Posts
JQuery Mobile swipe events в Android 4.2.2 не работает React Native Integration тестирование Android Android spinner Связывание данных с использованием XML и отображение выбранных значений Android Emulator on Jenkins error: устройство в автономном режиме Как рисовать стрелку, показывающую направление движения в MapView? Что такое использование метода recycle () в TypedArray Могу ли я создавать приложения для Android с учетом родных? NotifyDataSetChanged в адаптере Curser, не работающем с listfragment Как выйти из полноэкранного режима в эмуляторе Android Интерфейс проверки в приложении всегда находится в ландшафтном режиме на Honeycomb Нужна командная строка для запуска веб-браузера с помощью adb Получите абсолютную позицию для данного смещения на TextView (Android) В Android CLI build отображается недопустимая ошибка имени каталога ресурса: MY_PROJECT \ res / crunch Android NDK onAndroid Studio 2 Эспрессо, как щелкнуть по ImageView, помещенному в первый элемент списка?