1. 程式人生 > >getDrawable()方法過時 替代

getDrawable()方法過時 替代

     context.getResources().getDrawable(R.mipmap.icon_my);
     官方推薦呼叫 
     context.getResources().getDrawable(R.mipmap.icon_my,theme);

只是過時了,並不影響使用,只是在特殊情況下,在Android4.1系統之前載入縮圖可能會出現異常,所以被谷歌廢棄了。建議用以下方法代替:
ContextCompat.getDrawable(context,R.mipmap.indexz);

public class ContextCompat {
    /**
     * Return a drawable object associated with a particular resource ID.
     * <p>
     * Starting in {@link android.os.Build.VERSION_CODES#LOLLIPOP}, the returned
     * drawable will be styled for the specified Context's theme.
     *
     * @param
id The desired resource identifier, as generated by the aapt tool. * This integer encodes the package, type, and resource entry. * The value 0 is an invalid identifier. * @return Drawable An object that can be used to draw this resource. */
public static final
Drawable getDrawable(Context context, int id) { final int version = Build.VERSION.SDK_INT; if (version >= 21) { return ContextCompatApi21.getDrawable(context, id); } else { return context.getResources().getDrawable(id); } } }