2011-07-30 13 views
1

私はandroid:background = "@ drawable/home_background" を使用していますが、画面をランドスケープに切り替えると、画像が歪んで伸び過ぎます。画像は.jpg背景が歪んだ

答えて

3

私は2つの画像を使用します(1つはポートレート用、もう1つはランドスケープ用です)。私は、正しい画像を設定するには、次の使用私のActivityonCreate(...)で...

View view = getWindow().getDecorView(); 
int orientation = getResources().getConfiguration().orientation; 
if (Configuration.ORIENTATION_LANDSCAPE == orientation) { 
    view.setBackgroundResource (R.drawable.bground_land); 
} else { 
    view.setBackgroundResource (R.drawable.bground_port); 
} 

bground_land.jpgbground_port.jpgは私のプロジェクトの/ resを/描画可能ディレクトリにあるイメージです。

1

これは、アスペクト比が変更されたためです。 Androidでは、ランドスケープモードとポートレートモード(低、中解像度、高解像度の画面用)専用の画像セットが推奨されています。だから、あなたは背景画をres \ drawable-land(drawable-portのポートレイト)フォルダの下で横長モードに適したものにする必要があります。

もっと明確にするためにアンドロイドサンプルアプリを参照できます。 LunarLander Appでは、風景とポートレートモードの2つの画像が作成されていることがわかります。 (アンドロイドSDK .. \サンプル\ LunarLander \ RES)

Shash

1

http://developer.android.com/guide/developing/tools/draw9patch.htmlはこれを試して....またはあなたもportraitmodeや風景モードのいずれかで異なるドローアブルを行うことができる。..など異なるressource-構成を試してみてくださいdrawable-landのためのdrawablesフォルダと、名前を付けられたdrawable-portraitの1つを作成する

関連する問題