如何获取onDraw里的canvas对象?或者说如何在activity中获取自定义类中的canvas?

幻想月靡 2016-04-04 07:22:51
自定义了一个view,先在onDraw中画了一部分,类似于雷达图,现在我要根据activity中一个属性进行画点操作,但是无论用get方法还是customCanvas=canvas的思路都得不到我想要的结果,canvas仍然不是同一个。请问,如何获取onDraw里的canvas对象?如何实现onDraw完成后再进行画点的操作?
...全文
537 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
贪心的阿瑜 2018-04-20
  • 打赏
  • 举报
回复
// 改变宽高 requestLayout(); // 更改内容 invalidate(); 这里会自动再调用 draw(Canvas canvas) 方法的 准确来说 requestLayout(); 调用 onMeasure 和 onLayout ;invalidate() 调用 drawa 和 onDraw
ganshenml 2016-04-04
  • 打赏
  • 举报
回复
“customCanvas=canvas的思路” 是指将当前canvas对象赋值给一个自定义的 canvas对象吗?
落叶似秋 2016-04-04
  • 打赏
  • 举报
回复
可以把这个属性声明为公共静态的,然后在onDraw里获取他的值进行相应操作。而不是在activity里操作画布
xingzhong128 2016-04-04
  • 打赏
  • 举报
回复
建议你直接写一个新类继承要用的那个View,那后覆盖它的onDraw方法,这样就能用onDraw的canvas对象画图

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧