Мое фоновое изображение рисуется слишком большим для холста - PullRequest
0 голосов
/ 05 марта 2011

Фон, который я пытаюсь нарисовать для своего приложения, кажется, по какой-то причине слишком масштабным.Я убедился, что эмулятор - WVGA800, настроил его в манифесте и макете, чтобы он был в полноэкранном режиме и в альбомной ориентации (точно так же, как изображение размером 800 x 480).Я просто не вижу, где будет масштабироваться изображение.

Вот изображение проблемы.Изображение при вставке в эмулятор, а затем фактическое изображение.

http://i.stack.imgur.com/iRIFk.jpg

Вот некоторый соответствующий код:

/* mBackground instantiated in the class constructor */
mBackground = BitmapFactory.decodeResource( mContext.getResources(), R.drawable.background );

private void doDraw( Canvas canvas )
{
        canvas.drawBitmap( mBackground, 0, 0, null );
}

Вот макет

<?xml version="1.0" encoding="utf-8"?>

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal">

    <com.project.game.GameView
        android:id="@+id/game"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </RelativeLayout>

</FrameLayout>

Ответы [ 2 ]

1 голос
/ 06 марта 2011

Просто предположение - возможно, это зависит от того, какой тип папки используется для вставки изображения. Не могли бы вы сказать, где вы поместили изображение? Я имею в виду, это /res/drawable-hdpi/ или что-то еще? Вы пробовали /res/drawable-nodpi/?

1 голос
/ 05 марта 2011

одна возможность - создать холст с окном просмотра

public void onDraw(Canvas canvas) {
  Bitmap myImg = BitmapFactory.decodeResource(getResources(),
            R.drawable.cal_blank);
  canvas.setViewport(800, 480);
  canvas.drawBitmap(iconImg, 0, 0, new Paint(););
}

другой способ - масштабировать изображение этим методом http://www.anddev.org/resize_and_rotate_image_-_example-t621.html

...