你的位置:首页 > 操作系统

[操作系统]使用getDrawable时遇到的一个bug


做一个筛选菜单时候,用到了dongjunkun的DropDownMenu,github地址:https://github.com/dongjunkun/DropDownMenu

遇到几个问题:

(1)最右面的上三角形、下三角形很难看,需要改成向上箭头向下箭头,而且靠近文件,在右边;

(2)背景颜色需要改成白色;

(3)下面的子菜单的文字在最左边,需要居中;

(4)第一次进来Fragment的时候DropDownMenu的下拉选项没有选中任意一项

上面几个需求看起来很容易改,不就是改改布局什么的,其实改过之后就知道不是这么容易滴,我是直接改他的库,改的乱七八糟才成功。篇幅有限,这里就不说了。

说一下遇到的一个bug:就是代码中为TextView添加图片的一个bug

java.lang.NoSuchMethodError: android.content.res.Resources.getDrawable

 

          【解决办法】:

            ContextCompat.getDrawable(MainActivity.this.getApplicationContext(),R.drawable.ic_launcher);

          【原因】:

            Context类的getDrawable(res)/geColor(res)方法和Resources的getDrawable(res,theme)/getColor(res.theme)都是API21才添加的,

            低版本系统无法找到该方法所以报异常。