求android个立即刷新页面的方法,invalidate不好用。

qluq1101 2013-05-24 01:19:40
最近在做安卓开发,想要通过操作立即刷新view但不能如意,具体如下:
首先有三个.java文件:
1、myview(view)文件;
2、game(activity)文件;
3、keypad(dialog)文件;
调用顺序是:
1、myview的屏幕碰撞事件(也就是触摸屏幕事件)调用game中的showKeypadOrError函数,页面呈现出keypad给用户选择(其实一个自定义的弹出框,里面有若干按钮控件,设置了按键监听);
2、在keypad.java 的文件中的按键监听事件中调用了myview的setSelectedNum函数(此函数只有一句代码,就是invalidate();)。

问题是:
1、在keypad选择玩、关闭窗口后,myview并没有刷新!我理解为并没有执行ondraw函数,需要再次点击屏幕,myview界面才会刷新。
关于刷新代码,MyView.this.setVisibility(0)、invalidate()、postInvalidate();全都用过,就是不会实时刷新。我看别人的代码结构和我一模一样的(实时上,就是我在仿别人的),别人就能立即刷新,让我有点百思不得其解。
...全文
4177 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
baiqiuhanzb 2013-10-23
  • 打赏
  • 举报
回复
调requestLayout();
franzhong 2013-05-25
  • 打赏
  • 举报
回复
没刷新就要找原因,而不要采取回避态度,常见刷新view就用的是invalidate() 看看基础用法 http://blog.csdn.net/mars2639/article/details/6650876
深夜深几许 2013-05-25
  • 打赏
  • 举报
回复
先写个demo测试的
qluq1101 2013-05-25
  • 打赏
  • 举报
回复
自己顶一次.

80,359

社区成员

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

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