Получение моих растровых изображений на холсте, чтобы всегда быть "на весь экран" - PullRequest
0 голосов
/ 06 января 2012

Итак, у меня есть этот холст, на котором я рисую растровые изображения

Примером может служить растровое изображение в качестве фона ... поэтому я сделаю этот полноэкранный режим на своем 533x320 провале Samsung S2

, когда я загружаю это же приложение на, скажем, HTC с разрешением 480x320 ... мое фоновое изображение теперь будет больше экрана - как это обычно обрабатывается?

Я знаю, что некоторые могут ответить, что ямогу просто проверить размеры DIP и использовать это .. которое также будет работать для этого фонового изображения ... но как насчет 10 шахматных фигур, которые у меня есть, где одна из них не выходит за пределы экрана, потому что она расширяет 480dp HTC, но работаетотлично на моем 533dp S2?

Как это нормально обрабатывается?

Ответы [ 2 ]

0 голосов
/ 06 января 2012

То, как я это сделал, это сделать drawable для фона /drawable/backrepeat.xml, который повторяет изображение (metalgrid.jpg) в обоих направлениях.

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

Тогда у меня есть стиль

<style name="page_background_gen">
    <item name="android:background">@drawable/backrepeat</item>
</style>

И затем я использую этот стиль в своем макете

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content" 
android:id="@+id/relativeLayout1" 
style="@style/page_background_gen"
android:layout_width="fill_parent">
....
</RelativeLayout>

Это заполнит фон повторяющимся изображением без путаницы с масштабом изображения.

0 голосов
/ 06 января 2012

Есть много способов сделать это.Убедитесь, что вы всегда используете fill_parent или wrap_Content для своих атрибутов width и height.В случае использования ширины в процентах, используйте LinearLayout для макетов и используйте атрибут Layout_weight для указания ширины или высоты.

Не забудьте указать ширину или высоту как 0dp, если вы используете атрибут веса макета.

...