0
有没有办法让像素的颜色为(x,y),并检查它的红色是否为红色,然后发送触摸事件。在onTouch上获取颜色(像素)信息
我希望它在后台运行,它应该始终检查该像素(x,y)的颜色,一旦它变成红色,应该模拟一个触摸事件。
有没有办法让像素的颜色为(x,y),并检查它的红色是否为红色,然后发送触摸事件。在onTouch上获取颜色(像素)信息
我希望它在后台运行,它应该始终检查该像素(x,y)的颜色,一旦它变成红色,应该模拟一个触摸事件。
您可以从以下示例中获取值。
final Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap();
imageView.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event){
int x = (int)event.getX();
int y = (int)event.getY();
int pixel = bitmap.getPixel(x,y);
int red = Color.red(pixel);
int blue = Color.blue(pixel);
int green = Color.green(pixel);
return false;
}
});
请注意ImageView的宽度和高度必须是wrap_content。 – hasan83 2014-12-03 13:00:48
@Murtaza我想你让我错了。 我不想在onTouch上获得像素的颜色,我想要的是对特定像素进行检查,并在其颜色改变时触摸事件应该被模拟。 – 2014-12-13 17:38:57
这里有简单的逻辑。您可以使用r,g和b颜色代码记录x和y位置,并与时间间隔值进行比较,间隔可以通过许多方式实现,如AlarmManager和TimerTask – 2014-12-15 07:29:21