zoukankan      html  css  js  c++  java
  • bitmap和drawable的相互转化以及setImageResource(),setImageDrawable(),setImageBitmap()

    从本地获取drawable图片:getResources().getDrawable(R.drawable.**)

    获取bitmap:Bitmap b=BitmapFactory().decodeResource(context.getResource(),R.drawable.**);

    drawable转bitmap:

       Drawable a=**;Bitmap b=(BitmapDrawable)a.getBitmap()

     

    bitmap转drawable:

        Bitmap  b=**

       Drawble a=new BitmapDrawable(context.getResources(),b);

    setImageResource():这个方法是在UI线程中对图片读取和解析的,所以有可能对一个Activity的启动造成延迟。所以如果顾虑到这个官方建议用setImageDrawable和setImageBitmap来代替。

    setImageBitmap():实际上setImageBitmap做的事情就是把Bitmap对象封装成Drawable对象,然后调用setImageDrawable来设置图片,不如直接使用setImageDrawable()

    setImageDrawable():setImageDrawable是最省内存高效的,如果担心图片过大或者图片过多影响内存和加载效率,可以自己解析图片然后通过调用setImageDrawable方法进行设置。

  • 相关阅读:
    List(双向链表)
    Queue(队列)
    Queue(队列)
    Stack(栈)
    Stack(栈)
    Vector(容器)
    gitlab代码库
    Jenkins自动化部署平台
    Maven私服仓库
    VM架构设计文档初稿v0.01
  • 原文地址:https://www.cnblogs.com/zzy-frisrtblog/p/5598221.html
Copyright © 2011-2022 走看看