社区
Android
帖子详情
关于焦点获取的问题
ccll_4177
2010-07-13 03:34:02
我的布局文件是一个自定义的View,下面是一个ScrollView,每次都要点一下才能显示出View画的图形,怎么设置焦点也不行,类似的问题还有键盘事件时,第一次点击时需要两次才能响应,之前我碰到过一篇文章解决这个问题的,当时没有Mark,现在回去翻找不到了,自己当时看的时候也没用心,所以这里再次询问大家,帮助解决,
...全文
609
28
打赏
收藏
关于焦点获取的问题
我的布局文件是一个自定义的View,下面是一个ScrollView,每次都要点一下才能显示出View画的图形,怎么设置焦点也不行,类似的问题还有键盘事件时,第一次点击时需要两次才能响应,之前我碰到过一篇文章解决这个问题的,当时没有Mark,现在回去翻找不到了,自己当时看的时候也没用心,所以这里再次询问大家,帮助解决,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
28 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jing810863877
2010-07-16
打赏
举报
回复
回顶来了。
ccll_4177
2010-07-14
打赏
举报
回复
恩,我也是这么想的,回来再试一下,现在这个版本的还暂时不用,结贴给分~~!
ccll_4177
2010-07-14
打赏
举报
回复
[Quote=引用 26 楼 tonkey520 的回复:]
我的View上画的图,点击向下方向键,和其他方向键,分别向各个方向移动,就是第一次要点2下才有反应
[/Quote]
看24楼,把你的View对象使用setFocusable(true)
Tonkey520
2010-07-14
打赏
举报
回复
我的View上画的图,点击向下方向键,和其他方向键,分别向各个方向移动,就是第一次要点2下才有反应
oyq_yangy
2010-07-13
打赏
举报
回复
这就有可能是焦点问题了,因为第一次点击可能是让它获得了焦点,所以你先确认一下你的view的焦点设对了没有。
ccll_4177
2010-07-13
打赏
举报
回复
可是这个帖子还有一个问题没有解决,就是为什么第一次要点击两下按键,按键的事件才能响应?
ccll_4177
2010-07-13
打赏
举报
回复
也多谢20楼
ccll_4177
2010-07-13
打赏
举报
回复
[Quote=引用 19 楼 oyq_yangy 的回复:]
无论有没有焦点可见的view都需要绘制出来。。。所以你怎么确定第一次无法绘制出来是和焦点有关的?当然,如果焦点变化view会invalidete,所以能绘制。所以你要不直接调用invalidate试试看看。
[/Quote]
多谢提醒,是我前面删代码的时候删掉了个启动线程的代码,致使画面一直是初始状态,就没有画,就是死活没有想到。
这个事提醒我,下次一定要小心谨慎,每次更改代码之后都要测试下。
dinjay
2010-07-13
打赏
举报
回复
你单步调试一下,在ondraw上打断点,你看看你点击的时候为什么会去调用重绘,而一上来不走ondraw绘制。
oyq_yangy
2010-07-13
打赏
举报
回复
无论有没有焦点可见的view都需要绘制出来。。。所以你怎么确定第一次无法绘制出来是和焦点有关的?当然,如果焦点变化view会invalidete,所以能绘制。所以你要不直接调用invalidate试试看看。
ccll_4177
2010-07-13
打赏
举报
回复
[Quote=引用 16 楼 dinjay 的回复:]
你view画的东西画完了要invalidate那个view
[/Quote]
在View类中肯定是postInvalidate()了啊,要不怎么后面会显示,
在Activity也要invalidate ?
ccll_4177
2010-07-13
打赏
举报
回复
一开始这样的
非要点一下才能显示东西
dinjay
2010-07-13
打赏
举报
回复
你view画的东西画完了要invalidate那个view
ccll_4177
2010-07-13
打赏
举报
回复
[Quote=引用 13 楼 linshutao 的回复:]
楼主记得不要在onDraw()以外的其他地方画~~~
[/Quote]
看来楼上没明白意思啊,我还想说再别的onDraw()以外的地方画了,能显示么?
这个显然是焦点获取的问题,View没有获取焦点,可是设置了焦点之后还是要点一下才能显示出画的东西
charles_lc
2010-07-13
打赏
举报
回复
恩 但是你要focus的话 必须是要加这个attribute的
doc:By default the user can not move focus to a view; by setting this attribute to true the view is allowed to take focus.
如果加了的话我就不知道了 你可以把code贴出来大家看看
linshutao
2010-07-13
打赏
举报
回复
楼主记得不要在onDraw()以外的其他地方画~~~
ccll_4177
2010-07-13
打赏
举报
回复
[Quote=引用 10 楼 standatw 的回复:]
xml文件加了focusable吗?
[/Quote]
因为我用RelativeLayout,直接在Activity写的上面是自己画的View ,下面是显示图像信息的一个Scroll,Scroll部分是用XML文件,写好的,在Activity中在RelativeLayout把自己画图的View ,用
addView(),加上的
ccll_4177
2010-07-13
打赏
举报
回复
图像显示的还是不行啊,非得要在屏幕上随便点下,画的图形才能出现
charles_lc
2010-07-13
打赏
举报
回复
xml文件加了focusable吗?
vclongking
2010-07-13
打赏
举报
回复
LZ用View对象的requestFocus()方法获取试一下了
加载更多回复(8)
Android应用程序输入事件处理机制
在Android应用程序中,有一类特殊的消息,是专门负责与用户进行交互的,它们就是触摸屏和键盘等输入事件。触摸屏和键盘事件是统一由系统输入管理器InputManager进行分发的。也就是说,InputManager负责从硬件接收输入事件,然后再将接收到的输入事件分发当前激活的窗口处理。此外,InputManager也能接收模拟的输入事件,用来模拟用户触摸和点击等事件。当前激活的窗口所运行在的线程接收到InputManager分发过来的输入事件之后,会将它们封装成输入消息,然后交给当前获得
焦点
的控件处理。这个PPT讲Android应用程序输入事件的分发和处理过程,主要涉及到输入管理InputManager、输入事件监控线程InputReader、输入事件分发线程InputDispatcher,以及应用程序主线程消息循环。
vue中监听input框
获取
焦点
,失去
焦点
的
问题
一、背景 博主之前在用vue的
获取
焦点
,失去
焦点
的时候,出现了@blur和@focus无效的情况。当时百思不得其解。今天又在写vue页面的时候,突然@blur和@focus又好用了。emmmm,看来这部分值得一战。 二、首先是正宗的监听事件的写法 1、html代码 //这是html的输入框。定义了一个
获取
焦点
,失去
焦点
的方法 ...
iOS开发中的神兵利器
【课程概括】包含306节超多互动教程,基于新版的Swift和Xcode。手把手讲解大量实用的iOS开发开源类库:BonMot、PKHUD、DZNEmptyDataSet、Alamofire、Moya、Promise、Kingfisher、SnapKit、组件化编程、RxSwift响应式编程、Lottie动画、Hero转场动画、app主题更换、强大的幻灯片、GPUImage图像视频处理、Realm数据库、二维码创建和读取、模拟网络fake数据、自动化压力测试。手把手学习iOS开发中的强大的第三方类库,详细讲解Github中的热门的iOS开发开源项目。助您快速、优雅地解决iOS开发中棘手的业务需求!【课程特点】 1、代码逐行讲解2、语言简洁、精练、瞄准
问题
的核心所在,减少对思维的干扰,并节省您宝贵的时间3、完美贴心的操作提示,让您的眼睛始终处于操作的
焦点
位置,不用再满屏找光标4、每个视频都很短小精悍,即方便于您的学习和记忆,也方便日后对功能的检索 【福利来了】
获取
306节所有课程源码及加入学习群!
JavaScript 技术篇 - js 查看哪个元素
获取
了
焦点
,js 指定元素
获取
焦点
方法
JavaScript 技术篇 - js 查看哪个元素
获取
了
焦点
,js 指定元素
获取
焦点
方法。 查看
焦点
元素 通过 document.activeElement 可以
获取
哪个元素
获取
到了
焦点
。 如图所示,我的光标在这个查询框里。 可以
获取
到该元素。 使指定元素
获取
焦点
focus() 方法可以使某个元素
获取
焦点
。 如图,我把输入框的这个元素存到变量 e 里面。 然后手动把
焦点
指到别的元素上,再通过 focus() 方法让查询框重新
获取
焦点
。 可以看到
焦点
获取
成功了。
QLineEdit
获取
焦点
问题
最近项目中需要实现一个功能,当输入完ip之后判断ip是否合法,合法
焦点
跳向下一个QLineEdit,不合法清空重新输入。 对于
获取
焦点
我使用了事件过滤来处理
焦点
问题
,当然也可以使用QLineEdit自带的槽函数,不过自带槽函数局限较大,有兴趣大家可以去看看,下面附上代码: //事件过滤器 bool NetWork::eventFilter(QObject *watched, QEvent *...
Android
80,359
社区成员
91,290
社区内容
发帖
与我相关
我的任务
Android
移动平台 Android
复制链接
扫一扫
分享
社区描述
移动平台 Android
android
android-studio
androidx
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章