Intereting Posts
Ошибка ndk-gdb: устройство не поддерживает целевые CPU CPU ABI Как остановить виртуальное устройство Genymotion? Android Studio – просто не может заставить панель действий / переполнение работать? MarkerView выходит из графика для последней точки на графике Как выйти из режима Picture-in-Picture? Как установить текст подчеркивания в текстовом режиме? Android: Как установить свойство пароля в текстовом редакторе? Телефонная клавиатура Softkeyboard охватывает поле ввода Что такое getContentResolver (). Call () и как его использовать Первоначальная выборка Android Firebase Remote Config не возвращает значение Java.lang.NullPointer Исключение в getResources (). GetString (R.string.value); Должен использовать «sp» вместо «dp» для размеров текста Звуковые сигналы медиа-плеера Android забиваются / заикаются только на более новых устройствах Является ли использование переборки в Android проявлением хорошей практики? Не удается решить символ Android-проекта «LocationRequest»

Размещение фонового изображения

Я пытаюсь установить свой корневой элемент LinearLayout (который установлен на fill_parent в обоих измерениях), чтобы иметь фоновое изображение, которое всегда находится в левом нижнем углу экрана независимо от ориентации устройства. Было бы замечательно, если бы был какой-то способ установить положение фонового изображения, например, то, что вы можете сделать с помощью css, используя «background-position: left bottom»; Но я не вижу способа добиться этого в Android. Есть ли способ сделать это?

Спасибо за помощь.

    Вам нужно будет создать собственный растровый рисунок с вашим растровым изображением в XML-файле (например, «res / drawables / my_drawable.xml»)

    <?xml version="1.0" encoding="utf-8"?> <bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:src="@drawable/my_png_file" android:gravity="bottom|left" /> 

    А затем установите этот рисованный xml в качестве фона вашего представления («@ drawables / my_drawable»). Выбираемый формат XML очень плохо документирован на сайте Android, однако, это определенно не простая проблема, чтобы выяснить, как решить самостоятельно.

    Если найти преимущество, это делается программно: изображение подходит для макета вместо того, чтобы быть больше, чем оно. Никакой идеи почему.

    Код:

     Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.image); BitmapDrawable bitmapDrawable = new BitmapDrawable(bmp); bitmapDrawable.setGravity(Gravity.BOTTOM|Gravity.RIGHT); LinearLayout layout = (LinearLayout) findViewById(R.id.background_root); layout.setBackgroundDrawable(bitmapDrawable); 

    Оберните LinearLayout в RelativeLayout и добавьте ImageView к нему. С помощью android: layout_alignParentBottom и android: layout_alignParentLeft вы можете поместить свое изображение в левое нижнее.

     <RelativeLayout android:id="@+id/relativeLayout" android:layout_width="match_parent" android:layout_height="match_parent" > <ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:src="@drawable/my_image" /> <LinearLayout android:id="@+id/linearLayout" ... > 

    Убедитесь, что ImageView является первым элементом RelativeLayout для рисования изображения в фоновом режиме.