2010-12-28 31 views
0

私はEclipseを使用してAndroidアプリを作成しています。私は、画面のサイズに伸びた背景画像を私のアプリに表示させたい。Androidデバイスの画面に背景イメージを合わせる方法

私は次のコードを書いていますが、エミュレータでは、実行したときにすぐにアプリケーションを終了しました。誰かが...問題を理解するために私を助けてください。ここ

は私のコードです...

public class Roller extends Activity { 

    Display display = getWindowManager().getDefaultDisplay(); 
    int dwidth = display.getWidth(); 
    int dheight = display.getHeight(); 
    Bitmap background1 = BitmapFactory.decodeResource(getResources(),R.drawable.sunnybackground); 
    Bitmap BSunny = Bitmap.createScaledBitmap(background1,dwidth,dheight,true); 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(new Panel(this)); 
    } 

    class Panel extends View { 
     public Panel(Context context) { 
      super(context); 
     } 

     public void onDraw(Canvas canvas) { 
      canvas.drawBitmap(BSunny, 0, 0, null); 
     } 
    } 
} 
+0

は、エラー・ログを投稿できますか? – Kakey

+0

エミュレータで実行するとポップアップするエラー? – user556186

+0

アプリケーションが予期せず停止しました。もう一度やり直してください – user556186

答えて

0

なぜ、このようなだけではなく、何かでした:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    ImageView iv = new ImageView(this, null); 
    iv.setBackgroundResource(R.drawable.sunnybackground); 
    setContentView(iv); 
} 
+0

ありがとう、私はまだ葉巻を試しましたが、それでもエラーが表示されます – user556186

0

なぜあなたは設定しないでくださいレイアウトxmlファイルの背景イメージ? 実行時にプログラムで設定する必要がありますか?私はあなたが 以下のようにしてくださいと思います

0

(アクティビティが作成されていない限り、あなたは、表示情報を得ることができないようです)

public class Roller extends Activity { 

Bitmap BSunny; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 

    Display display = getWindowManager().getDefaultDisplay(); 
    int dwidth = display.getWidth(); 
    int dheight = display.getHeight(); 
    Bitmap background1 = BitmapFactory.decodeResource(getResources(),R.drawable.sunnybackground); 
    BSunny = Bitmap.createScaledBitmap(background1,dwidth,dheight,true); 

    setContentView(new Panel(this)); 
} 

class Panel extends View { 
    public Panel(Context context) { 
     super(context); 
    } 

    public void onDraw(Canvas canvas) { 
     canvas.drawBitmap(BSunny, 0, 0, null); 
    } 
} 

} 
関連する問題