Как добавить фон вертикальной плитки (только) в приложение для Android

Очень просто повторять по горизонтали и вертикали фон линейного макета в приложении для Android. Вам просто нужно использовать tileMode (см. Как заставить фоновое изображение приложения для Android повторяться)

Однако tileMode в файле XML не позволяет мне повторять фоновое изображение только по вертикальной оси. Существует tileModeY, но вы не можете получить к нему доступ из xml.

Я пытаюсь изменить это свойство, чтобы "повторить".

У меня есть файл main.xml с линейной разметкой:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
              android:id="@+id/mainMenuLayout" 
              android:orientation="vertical"
              android:gravity="center_horizontal" 
              android:layout_width="fill_parent" 
              android:layout_height="fill_parent">

У меня есть изображение в drawable/welcomebackground.png, а также XML-файл для изображения в drawable/welcomebackgroundpattern.xml:

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/welcomebackground"
        android:dither="true" />

В своей деятельности я пробовал это:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Resources res = getResources();
    BitmapDrawable background = (BitmapDrawable) res.getDrawable(R.drawable.welcomebackground);
    background.setTileModeY(Shader.TileMode.REPEAT);
    (new View(this)).setBackgroundResource(R.drawable.welcomebackground);
    }

Но мой фон все еще черный. Конечно, я могу добавить его из xml, но он повторяется по осям x и y.

Таким образом, мой вопрос довольно прост: как я могу повторить вертикально изображение "welcomebackground" в моей деятельности?

1 ответ

Я нашел решение: Android Bitmap Tile на X Only

Другие вопросы по тегам