2011-12-22 15 views
0

可能性の重複:
Android: Scale a Drawable or background image?フルスクリーン/スケーリングされた画像

私はImageViewのが含まれているポップアップをしたいのですが。今、私が描いているDrawableは100x200pxです。 Drawableは質の良いものなので、フルスクリーンで表示したいと思います。私はどのように考えている。これは、これまでの私のコードです:

 AlertDialog.Builder imgDialog = new AlertDialog.Builder(
      myactivity.this); 
    ImageView imageView = new ImageView(myactivity.this); 

    Matrix matrix = new Matrix(); 
    matrix.postScale(2, 2); 

    imageView.setImageDrawable(myDrawable); 
    imageView.setImageMatrix(matrix); 



    LayoutParams imageViewLayoutParams = new LayoutParams(
      LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
    imageView.setLayoutParams(imageViewLayoutParams); 

    LinearLayout layout = new LinearLayout(myactivity.this); 
    layout.setOrientation(LinearLayout.VERTICAL); 
    layout.addView(imageView); 

    imgDialog.setView(layout); 

私はすでにFILL_PARENTにImageViewのLayoutParamsのWRAP_CONTENTを設定しようとしましたが、これは状況は変わりません。

任意の助けをいただければ幸いです。.. Drawableの幅が100、高さは200 IがDrawableのかImageViewのスケーリングを考えるが、これは、これまで成し遂げることができなかったよです!

+0

これは[重複する質問](http://stackoverflow.com/q/1400782/403455)のようです。 –

+0

ありがとうございました.Googleで検索した後にこれを見つけられませんでした。幅は今伸ばされていますが、高さは依然として元の大きさです。なぜでしょうか? – harmjanr

答えて

1

ダイアログのウィンドウオブジェクトを操作してみてください。

Dialog dialog = imgDialog.create(); 
dialog.setContentView(layout); 
Window window = dialog.getWindow(); 
window.setLayout(
    (int)(window.getWindowManager().getDefaultDisplay().getWidth()), 
    (int)(window.getWindowManager().getDefaultDisplay().getHeight())); 

これは、ダイアログが両方向で画面の100%を占めるように強制します。

+0

imgDialogのgetWindowが動作していないようです.. – harmjanr

+0

あなたの権利は残念です。これをDialog型のオブジェクトに使用する必要があります。 – riotopsys

+0

私はglenviewjeffが与えたリンクでほぼそこにいます。すでに幅をアップスケールしても、まだ高さは機能していません。 – harmjanr

関連する問題