1、由于多成Layer嵌套,监听onTouch事件会根据返回值一层层调用,返回false就掉用上层的onTouch事件,直到返回true终止。
例如下面代码:
<AbsoluteLayout
android:id="@+id/AbsoluteLayout"
android:layout_height="fill_parent"
android:layout_width="fill_parent" >
<ImageView
android:id="@+id/myImageView"
android:adjustViewBounds="true"
android:maxHeight="72dip"
android:maxWidth="72dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
launcher:direction="horizontal" />
</AbsoluteLayout>
在ImageView的onTouch事件返回false的情况下,就会调用AbsoluteLayout的onTouch事件。
2、实例分析,在Launcher的主界面加入上面那段代码,想要实现ImageView跟随手指移动的功能。
问题:
中途遇到一个问题就是当我使用ImageView的onTouch事件监听使用手指按住ImageView拖动的时候,ImageView在屏幕上出现两个相同的图片,并和手指的拖动不协调。而使用AbsoluteLayout的onTouch监听移动事件则能使图片正常移动。
分析:
经过控制台输出onTouch获得的x、y坐标发现,原来不是出现两个ImageView图片,而是一个ImageView图片在两个位置来回闪动。这表明座标出了问题,对坐标值分析过后发现,使用AbsoluteLayout的onTouch事件监听到的坐标是手指在该AbsoluteLayout下的坐标,如果AbsoluteLayout是全屏的话,就是屏幕坐标。而ImageView的onTouch事件监听到的坐标,则是以上一次ImageView所在点为原点(0,0),与当前手指触摸点的相对坐标,这种坐标会出现负数。
解决:
在ImageView的onTouch事件MotionEvent.ACTION_MOVE:中保留上一次ImageView在屏幕中的坐标,在这个基础上进行移动。
上面有个问题没有想通,就是在AbsoluteLayout的onTouch事件中,无法得到该AbsoluteLayout中的ImageView。见下面的代码:
public boolean onTouch(View v, MotionEvent event){
if(v instanceof ImageView){}
}
这个v始终不是ImageView,而是AbsoluteLayout。所以还不知道怎么在AbsoluteLayout的onTouch事件中得到ImageView的坐标。
分享到:
相关推荐
ScrollView嵌套GridView不能滚动的问题解决方案 在 Android 开发中,我们经常会遇到 ScrollView 嵌套 GridView 的问题,导致页面不能滚动的问题。这个问题的出现是因为 ScrollView 和 GridView 都带有滚动条,当...
这些配置项通常在初始化时通过参数传递,如`$("#loading-layer").layerLoading({color: '#FF0000', size: '50px', speed: '2s', type: 'circle'})`。 5. **兼容性和优化**: 作为一款现代Web插件,"layer_loading...
电源管理是任何FPGA设计的重要环节,XC7Z045FF900需要多个电压等级的电源供应,如VCCINT、VCCAUX等,以满足不同功能区块的需求。因此,设计时需确保电源的稳定性和效率,同时满足噪声和电磁兼容性要求。 散热设计是...
为了更深入地了解这些知识点,我们需要更多关于"Ford folcerson algotirm"的具体信息,以及解压并检查"FF"文件的内容。如果"FF"是一个可执行文件,我们可能需要运行它以观察其行为;如果是文本文件,我们可以阅读并...
标题中的“兼容IE7 IE8 FF 等主流浏览器多标签滑动门”指的是一个网页设计技术,旨在创建一个能够跨多个主流浏览器工作的多标签页切换效果。这种效果通常用于网站导航,允许用户通过点击不同的标签来切换内容区域。...
### IE与FF脚本兼容性问题详解 #### 一、概述 随着Web技术的发展,不同浏览器之间的兼容性问题一直是前端开发者关注的重点。本文主要探讨Internet Explorer(简称IE)与Mozilla Firefox(简称FF或MF)之间在...
7. **无缝集成**:FF-HSE协议兼容Fieldbus Foundation的其他协议,如FF-H1,使得现有系统可以平滑升级到高速以太网,减少了投资成本。 8. **服务质量(QoS)**:FF-HSE支持不同等级的服务质量,可以根据不同业务...
旧版游戏FF7中文攻略剧情经典方块人物
本文将深入探讨FF和IE之间的CSS兼容性问题,以及如何解决这些差异。 首先,让我们来看标题和描述中提到的问题:如何使`DIV`或`table`在IE和Firefox中水平居中。在CSS中,有多种方法可以实现这个效果,但并非所有...
标题“FF下字体小问题”指的是在Firefox浏览器中遇到的字体显示过小的问题。这个问题通常是由于浏览器的默认样式、CSS样式表的不兼容性或网页编码设置等因素导致的。让我们深入探讨一下这个问题及其解决方案。 首先...
FF和IE的兼容性问题一直是前端开发者面临的重要挑战。这些浏览器在处理JavaScript、DOM操作以及事件处理等方面的差异,可能导致代码在不同浏览器上表现不一致。以下是对这些兼容性问题的详细解析和解决策略: 1. **...
FF14,全名《最终幻想XIV》,是一款大型多人在线角色扮演游戏,由日本Square Enix公司开发。ACT(Advanced Combat Tracker)则是一款专为MMORPG玩家设计的游戏辅助工具,尤其在FF14社区中广受欢迎。它能实时追踪游戏...
7. **注意事项**:生成的FF填充文件应当谨慎使用,因为它可能会覆盖现有的数据。在实际操作前,确保你了解其可能产生的影响,并做好数据备份。 通过以上内容,我们可以了解到生成固定大小的FF填充文件在IT领域的...
1. 确保库文件中的封装与实际继电器的物理尺寸一致,以避免制造时出现装配问题。 2. 检查继电器的电气特性,如额定电压、电流等,确保其能满足电路的需求。 3. 在原理图和PCB之间进行设计规则检查(DRC),以验证...
7. **知识产权问题**: - 修改游戏数据可能违反游戏的使用条款,尤其是如果未经游戏开发商许可。因此,使用这类修改器可能引起法律纠纷,特别是当涉及到在线多人游戏时,因为这可能破坏游戏平衡。 8. **软件分发...
FF协议由多个层次组成,包括物理层、数据链路层、现场总线访问子层、现场总线消息规范等,具体如下: - **物理层**(PHYSICAL LAYER):负责信号的发送和接收,定义了信号的电平、阻抗匹配等电气特性。 - **数据链路...
在数据分析阶段,可以使用pandas库对抓取的数据进行统计分析,绘制图表,从而得出关于FF14市场趋势的见解。 总结,FF14_ff14_網頁爬蟲_源码项目涵盖了Python基础、网络请求、HTML解析、数据库操作、反爬策略等多个...
本主题聚焦于一个特定的应用场景——"JQuery IFrame框架高度自适应",这是一个常见需求,尤其是在构建跨浏览器的多页面应用时。通过使用jQuery来实现iframe的高度自适应,我们可以确保内容在不同浏览器(包括IE、...
7. **自定义设置**:FFFtp提供了丰富的设置选项,用户可以根据自己的网络环境和使用习惯调整各种参数,如传输速度限制、文件传输模式等,以达到最佳的使用效果。 8. **文件对比功能**:FFFtp内置文件对比功能,可以...
3. **断点续传**:如果在传输过程中因网络问题中断,FFFTP支持在恢复连接后从断点继续传输,避免了文件的重复下载或上传。 4. **目录同步**:用户可以选择本地和远程目录进行同步,确保两个位置的文件一致。 5. **...