
关于onDraw函数不被调用的解决方法
发布日期:2021-05-07 02:33:03
浏览次数:29
分类:精选文章
本文共 860 字,大约阅读时间需要 2 分钟。
这个问题花了我一个下午才解决,找了很多方法,但是都没用。希望各位可以早点看到这个解答!!!
1.在重写View的时候有没有加上setWillNotDraw(false)
this.setWillNotDraw(false);
public class PeopleView extends View { public float bitmapX; public float bitmapY; public PeopleView(Context context) { super(context); this.setWillNotDraw(false);//看看这个有没有 } @Override protected void onDraw(Canvas canvas){ super.onDraw(canvas); Paint paint = new Paint(); Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.person22); canvas.drawBitmap(bitmap,bitmapX,bitmapY,paint); canvas.scale(0.1f,0.1f); if(bitmap.isRecycled()){ bitmap.recycle(); } }
如果加上了,还不能解决问题,那么试一试下面的方法。
2.看看你的调用函数是不是invalidata().
如果是的,将其更改为postValidata().
postValidata().
更改后能够成功调用onDraw,那么恭喜啦,
因为我是在Timer里执行View的方法,而之前的代码是使用Handler执行View方法。
原理在这里:
发表评论
最新留言
做的很好,不错不错
[***.243.131.199]2025年04月07日 01时38分08秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Docker 服务
2021-05-09
第一眼就心动的人还怎么做朋友
2021-05-09
Cassandra数据建模
2021-05-09
Elasticsearch Web管理工具
2021-05-09
Git 配置SSH公钥、私钥
2021-05-09
极客时间离线课堂
2021-05-09
Spring Session
2021-05-09
koa2 中间件里面的next到底是什么
2021-05-09
在create-react-app创建的项目下允许函数绑定运算符
2021-05-09
博客园新闻频道开始公开测试
2021-05-09
评论表聚集索引引起的评论超时问题
2021-05-09
博客园上海俱乐部4月份活动通知邀请函已经发出!
2021-05-09
上周热点回顾(5.24-5.30)
2021-05-09
Internet Explorer 10 专题上线
2021-05-09
云计算之路-阿里云上:0:25~0:40网络存储故障造成网站不能正常访问
2021-05-09
网站故障公告1:使用阿里云RDS之后一个让人欲哭无泪的下午
2021-05-09
上周热点回顾(12.31-1.6)
2021-05-09
上周热点回顾(1.21-1.27)
2021-05-09
上周热点回顾(6.3-6.9)
2021-05-09
上周热点回顾(8.12-8.18)
2021-05-09