image1.setOnTouchListener(new OnTouchListener()
{
@Override
public boolean onTouch(View view, MotionEvent event)
{
BitmapDrawable bitmapDrawable = (BitmapDrawable) image1
.getDrawable();
//获取第一个图片显示框中的位图
Bitmap bitmap = bitmapDrawable.getBitmap();
//bitmap图片实际大小与第一个ImageView的缩放比例
double scale = bitmap.getWidth() / 320.0; //这句话为什么要这么写有什么用
//获取需要显示的图片的开始点
int x = (int) (event.getX() * scale);//这儿的event是什么
int y = (int) (event.getY() * scale);
if (x + 120 > bitmap.getWidth())
{
x = bitmap.getWidth() - 120;
}
if (y + 120 > bitmap.getHeight())
{
y = bitmap.getHeight() - 120;
}
//显示图片的指定区域
image2.setImageBitmap(Bitmap.createBitmap(bitmap, x, y, 120, 120));//createBitmap里的参数给解释下。。
image2.setAlpha(alpha);
return false;
}
});
{
@Override
public boolean onTouch(View view, MotionEvent event)
{
BitmapDrawable bitmapDrawable = (BitmapDrawable) image1
.getDrawable();
//获取第一个图片显示框中的位图
Bitmap bitmap = bitmapDrawable.getBitmap();
//bitmap图片实际大小与第一个ImageView的缩放比例
double scale = bitmap.getWidth() / 320.0; //这句话为什么要这么写有什么用
//获取需要显示的图片的开始点
int x = (int) (event.getX() * scale);//这儿的event是什么
int y = (int) (event.getY() * scale);
if (x + 120 > bitmap.getWidth())
{
x = bitmap.getWidth() - 120;
}
if (y + 120 > bitmap.getHeight())
{
y = bitmap.getHeight() - 120;
}
//显示图片的指定区域
image2.setImageBitmap(Bitmap.createBitmap(bitmap, x, y, 120, 120));//createBitmap里的参数给解释下。。
image2.setAlpha(alpha);
return false;
}
});
解决方案 »
- android 开发AVD Create new 失败 为什么下面的不能按啊 求高手解答啊
- 由SurfaceView运行中切换到layout内View报错的问题
- android系统 如何添加usb设备驱动
- 关于android mediaplay的调用问题
- 类似于桌面那样的屏幕切换叫什么效果?
- WebView隐藏元素Bug 绕不过去!
- 如何动态修改按钮的style属性?
- 桌面电脑上的红帽Linux 和 嵌入式Linux 的问题
- 版Google官网下载的adt,里面包括了Eclipse和sdk,但是sdk本是4.3的,如何添加多版本的sdk到Eclipse中呢
- VLC Android编译出错,大家帮忙看看
- 有关ANDROID加电后启动顺序的若干疑问
- alertDialog.build的setMultiChoiceItems方法如何得到多选的值
event是触屏事件回调事件;Bitmap.createBitmap(bitmap, x, y, 120, 120);这个是从源bitmap中坐标点(x,y)截取个120*120的图片作为新的bitmap