作者YOOJTROOY (马克思)
看板AndroidDev
标题[问题] 如何判断图片被滑过(HOVER)?
时间Fri Jun 12 10:10:26 2015
我在layout大概是这样
L=LinearLayout
图就是imageview
L图图图图图图
L图图图图图图
L图图图图图图
L图图图图图图
L图图图图图图
每张图都有OnTouchListener跟OnHoverListener
首先我要按下一张图onTouch触发>作一些事情
然後手指要按住不放
然後其他图片要监听 被滑过就换背景(或是换图之类的)
我google好久最接近的应该是hover
我记得网页css做这个功能超简单啊
public boolean onHover(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_HOVER_ENTER:
v.setBackgroundColor(Color.GRAY);
break;
case MotionEvent.ACTION_HOVER_MOVE:
// v.setBackgroundColor(Color.GRAY);
break;
}
return true;
}
但是都没作用
之後我在onTouch就用座标去判断
case MotionEvent.ACTION_MOVE:// 移动图片时
// 手指滑到哪的座标
mx = (int) (event.getRawX());
my = (int) (event.getRawY());
//这方法判断滑到哪个图范围内
nearby_center(mx, my);
break;
以上都不起作用
有没有简单好用像是css那种hover一样的方法阿
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.171.74.188
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1434075028.A.100.html
1F:→ egaryer: 应该要用多点触控的方法? 06/12 10:57
2F:→ YOOJTROOY: 只需要一只手指滑过 06/12 11:13
3F:→ YOOJTROOY: 刚刚又试了onfocuschange也不行 06/12 11:15
4F:→ egaryer: 你就第一手指还要按住就做多点啊... 06/12 11:53
5F:→ egaryer: 拍谢 更正一下 应该是要自己改写onTouchEvent 06/12 13:34
6F:→ egaryer: 滑过这功能要自己去抓view 06/12 13:35
7F:→ YOOJTROOY: 那应该就是我下面写的功能啊,可是没反应 06/12 14:03
8F:→ egaryer: 监听器写在图上 但是点在图外就没作用 06/12 14:47
9F:推 andy13579372: draglistener好像可以 用个透明的view当作被drag的 06/12 22:24
10F:→ andy13579372: 东西 06/12 22:24