Intereting Posts
Android ImageView с закругленными углами не работает Не удалось найти Facebook SDK.apk Использование интернет-данных в Android LocationManager Невозможно добавить несколько фрагментов в LinearLayout Поддерживает ли Android поддержку структуры MVC (Model View Controller)? Автозаполнение textview google places api Строка состояния Android ожидает значков размером 25x25dp, а рекомендации рекомендуют 32x32dp. Кто не прав? Android fragment addToBackStack (null): как добавить один и тот же фрагмент в стек всего один раз? Android – настраиваемая кнопка с элементами рисования и градиентом программно Как выбрать формат видео для воспроизведения в Интернете, Android и iOS? Как я могу показать ProgressBar только после минимальной задержки? Разработка приложений для iPhone и Android Как выполнить минимизацию и обфускацию с помощью компилятора JACK? Кнопка громкости звука при блокировке телефона Android Обработка видео с помощью GPUImage Android

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

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

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

Solutions Collecting From Web of "Размещение фонового изображения"

Вам нужно будет создать собственный растровый рисунок с вашим растровым изображением в 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 для рисования изображения в фоновом режиме.