【问题标题】:Fullscreen/scaled image in popup [duplicate]弹出窗口中的全屏/缩放图像[重复]
【发布时间】:2011-12-23 03:08:34
【问题描述】:

可能重复:
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。我正在考虑缩放 Drawable 或 ImageView,但到目前为止未能完成。

任何帮助将不胜感激!

【问题讨论】:

  • 这似乎是duplicate question
  • 谢谢,在谷歌上搜索后没有找到这个。宽度现在被拉伸了,但高度仍然是原始大小。知道为什么吗?

标签: android


【解决方案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%。

【讨论】:

  • imgDialog 上的 getWindow 似乎不起作用..
  • 对不起,您的权利,您需要在 Dialog 类型的对象上使用它。
  • 虽然glenviewjeff给出的链接我已经快到了。现在已经扩大宽度,高度仍然不起作用。
  • 尝试编辑版本,提醒自己不要在嗡嗡声中回答问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-18
  • 1970-01-01
  • 1970-01-01
  • 2021-03-07
  • 1970-01-01
  • 2016-05-10
  • 1970-01-01
相关资源
最近更新 更多