java - 将 ImageView 位图设置为返回的位图

标签 java android bitmap imageview android-imageview

我试图将 ImageView 的位图图像设置为另一个类返回的位图,下面是代码 fragment :-

imageView = (ImageView) findViewById(R.id.imageView);
Bitmap myBitmap = myModel.loadBitmap(getResources(), R.drawable.nether);
imageView.setImageBitmap(myBitmap);

这是模型类:-

public class Model {

Bitmap cache;

public Bitmap loadBitmap(final Resources resource, final int i){

    new Thread(new Runnable(){
        public void run(){

            cache = BitmapFactory.decodeResource(resource, i);

        }
    }).start();

    return cache;
}
}

问题是图像不显示。它显示是否在同一类中设置 ImageView 位图之前使用了用于加载位图的代码,但返回的位图不起作用。

任何帮助都会很棒,谢谢!

最佳答案

-您使用了在后台运行的线程,因此它不会按顺序运行,并且您的缓存可能会返回 null,这就是您无法设置位图的原因

使用这个简单的行来解决您的问题:-

Bitmap bitmap= BitmapFactory.decodeResource(getResources(), R.drawable.icon);

关于java - 将 ImageView 位图设置为返回的位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34170656/

相关文章:

Java 正则表达式匹配,2 个简单的正则表达式问题

android - 制作一个包含自定义对象列表的类 parcelable

android - Sqlite Android 原始查询插入不工作

android - MediaMetadataRetriever.getFrameAtTime() 仅返回第一帧

android - 加载/保存位图时图像质量差

java - 如何为未配置 web.xml 的 Web 应用程序指定显示名称

java - 在 Java 中同步 String 对象

java - 对于大型 ByteBuffer,单独 SocketChannel 的并发 read() 速度较慢

java - 解析jsoup url android

android - 使用 Overlays 时如何缓存 android.graphics.path 或 Bitmap?