Android Studio问题解决系列2—Resources中getDrawable(int)过时

今天在Android Studio 1.2.2中编译代码时遇到Resources中getDrawable(int)已过时的警告信息:

Warning:(133, 52) java: android.content.res.Resources中的getDrawable(int)已过时

查看[1]可总结出以下信息:

Resources类中有两个方法在API level 22中被废弃:

废弃接口:Drawable getDrawable(int id)

替代接口:Drawable getDrawable(int id, Resources.Theme theme), 第二个参数@theme可以为空值.

或Context.getDrawable(int)

废弃原因:在JELLY_BEAN(也就是Android 4.1版本)之前, 当这里传递的资源ID是另一个Drawable资源的别名, 则该函数不能正确地获取到最终配置density。即别名资源(alias resource)的density配置不同于实际资源的, 返回的Drawable对象的density将不正确, 这样缩放时将出错。

废弃接口:Drawable getDrawableForDensity(int id, int density)

替代接口:Drawable getDrawableForDensity(int id, int density, Resources.Theme theme)

检查getDrawable(int id)函数实现,当被调用时将输出下面警告信息并给出修改方案:

参考资料:

[1] Class Resources, http://developer.android.com/intl/zh-cn/reference/android/content/res/Resources.html

时间: 2024-11-05 11:54:05

Android Studio问题解决系列2—Resources中getDrawable(int)过时的相关文章

【Android Studio探索之路系列】之六:Android Studio加入依赖

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [Android Studio探索之路系列]章节列表 [Android Studio探索之路系列]之中的一个:Android Studio开篇 [Android Studio探索之路系列]之二:Android Studio软件安装 [Android Studio探索之路系列]之

Android总结篇系列:Activity中几个主要函数详解

专注Android领域开发. 仰望星空,同时需要脚踏实地. ——好记性不如烂博客 Android总结篇系列:Activity中几个主要函数详解 Activity作为Android系统中四大基本组件之一,包含大量的与其他的各大组件.intent.widget以及系统各项服务等之间的交互的函数.在此,本文主要选取实际项目开发中常用的,但完全理解又需要有一定深入了解的几个函数进行讲解,后续本文会根据需要不断更新. 1. startActivityForResult / onActivityResult

【Android Studio探索之路系列】之八:Gradle项目构建系统(二):Gradle for Android脚本语法

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 在介绍Gradle for Android脚本语法语法之前,我们先来了解一下Android Studio工程中几个常见的Gradle脚本文件的相关功能,这样我们会有个大致的印象,而后我们再详细的去讨论相关的语法表达. Android Studio中,Gradle由一个顶级配置文

【Android Studio探索之路系列】之九:Gradle项目构建系统(三):第三方Android Studio项目导入:

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 有时候我们会在Github等网站看到一些不错的开源项目,对于这些开源项目,我们一般会有阅读源码和查看效果两种需求.这个时候,我们可以把项目导入Android Studio进行源码查看和编译. 在正式介绍如何在Android Studio中导入第三方项目之前,先介绍一种轻量级的实

Android studio assets error:前言中不允许有内容

根据以往在eclipse上的经验,在Android studio上开发的时候也将assets目录放在了src/main/res目录下,build的时候出现如下异常: Executing tasks: [clean, :app:generateDebugSources, :app:generateDebugAndroidTestSources] Configuration on demand is an incubating feature. :app:clean :app:preBuild UP

【Android Studio探索之路系列】之五:Android Studio项目创建

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 首先阐述一下在Android Studio项目创建中涉及的两个概念. Project:工作空间 Module:具体的项目 对应关系 在 Eclipse 中,我们可以同时对多个Project进行同时编辑,这些 Project 在同一个Workspace之中.在Android St

[Android Studio 权威教程]AS 中配置强大的版本号管理系统(Git、SVN、等)

在Eclipse中加入Git等版本号管理工具须要自己加入插件.并且个人认为不咋好用,在AS中已经给我们集成好了,我们仅仅须要配置一下就OK了.今天就和大家聊聊怎么配置以及使用的要点. 1. 安装Git/CVS 第一步首先你须要安装Git/CVS等版本号管理工具.这个请自行百度 2. 新建一个本地空仓库 新建一个仓库叫GitTest 仓库如今是空的什么都没有 找到路径,然后复制路径(这步非常重要) 3. 新建AS项目 项目创建完毕.这个时候我们能够看到AS提示我们配置仓库的提示,我们接下来配置一下

【Android Studio探索之路系列】之四:Android Studio快捷键

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 本篇文章介绍Android Studio的快捷键,由于快捷键很多,所以文章开始列出最为常用的一组快捷键,并在文章末尾给出详尽的快捷键描述. Android Studio常用快捷键 Ctrl+G / Ctrl+Alt+Shift+G:查询变量或者函数或者类在哪里被使用或被调用,后

【Android Studio探索之路系列】之六:Android Studio添加依赖

作者:郭孝星 微博:郭孝星的新浪微博 邮箱:[email protected] 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell 本文主要讲解如何在Android Studio中添加JAR包.Module和SO库. 一 JAR包的依赖配置 首先使用快捷键Ctrl+Alt+Shift+S打开当前项目的配置,如下图所示: 1.1 直接搜索法 点击 +->Library dependency,如下图所示搜索选择