ImageView上的setImageUri不起作用

时间:2012-12-16 15:37:15

标签: android imageview

我正在尝试使用我的应用制作图片,但它不起作用。

我正在实现一个用我的应用程序记录图片的功能,结果是一个URI。

我在我的活动中有这个URI,我尝试向用户显示录制的图片,为了实现这一点,我从imageview使用方法setImageUri ...但它对我不起作用。

我很困惑的是,图像视图存在,在屏幕上我看到了维度。

在这种情况下,我实施的代码

ImageView imgView = new ImageView(activityContext);
        imgView.setImageURI(Uri.parse(captureImg.toString()));
        mainFrame.addView(imgView, 100, 100);

另一种解决方案:

Drawable d = Drawable.createFromPath(captureImg.toString());
        ImageView imgView = new ImageView(activityContext);
        imgView.setImageDrawable(d);
        mainFrame.addView(imgView, 100, 100);

这两个对我都不起作用,我必须尝试使用​​Bitmap的任何解决方案,但这对我来说也不起作用。

迎接

3 个答案:

答案 0 :(得分:3)

请确保您的“UI代码”(imageView.setImageDrawable(d);)在UI线程上运行 以此为参考:http://www.vogella.com/articles/AndroidPerformance/article.html

答案 1 :(得分:0)

尝试:

ImageView imgView = new ImageView(activityContext);
LinearLayout.LayoutParams vp = new LinearLayout.LayoutParams
                          (LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
imgView.setLayoutParams(vp);
imgView.setMaxHeight(100);
imgView.setMaxWidth(100);
imgView.setImageURI(Uri.parse(captureImg.toString()));
mainFrame.addView(imgView);

您没有将LayoutParams添加到动态创建的ImageView

答案 2 :(得分:0)

---试试这个---

ImageView imgView = new ImageView(activityContext);
imgView.setImageURI(Uri.parse(captureImg.toString()));
mainFrame.addView(imgView, new LinearLayout.LayoutParams(200,200));