作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用在 android 屏幕上显示气泡图像的小应用程序。我已经显示了资源目录中的所有气泡图像。我在 View 类中实现了如下代码。
onDraw方法:
@Override
protected void onDraw(Canvas canvas)
{
super.dispatchDraw(canvas);
drawImages(canvas);
}
我实现了 drawImages() 方法如下:
BitmapFactory.Options opts = new BitmapFactory.Options();
private void drawImages(Canvas canvas)
{
for(int i = 0; i<MAX_ROWS; i++){
for(int j=0; j<MAX_COLS; j++)
{
bmp = BitmapFactory.decodeResource(mContext.getResources(), items[i][j],opts);
canvas.drawBitmap(bmp,j*bmp.getWidth()+j*2,i*bmp.getHeight()+i*2,mBitmapPaint);
}
}
}
通过使用上述方法,我从项目 [i][j] 中绘制了图像。我已经实现了 initialize() 覆盖方法,如下所示:
@Override
protected void initialize()
{
for(int i=0;i<MAX_ROWS;i++)
for(int j=0;j<MAX_COLS;j++)
{
items[i][j] = ImagesStore.ImageList.get(list_Indx);
list_Indx++;
if(list_Indx == ImagesStore.ImageList.size())
list_Indx = 0;
}
opts.inSampleSize = 4;
width = getWidth();
height = getHeight();
}
通过使用上面的代码,我已经在我的模拟器屏幕上显示了所有气泡图像。
这里我想交换用户同时选择两个气泡的气泡。
我已经实现了 onTouchEvent 方法来检查位图图像项目在屏幕上的位置,如下所示:
int x = 0;
int y = 0;
int tx = 0, ty = 0;
@Override
public boolean onTouchEvent(MotionEvent event)
{
tx = (int)event.getX();
ty = (int)event.getY();
int position;
x=tx;
y=ty;
row = (y) / bmp.getHeight();
col = x / bmp.getWidth();
position=row*MAX_COLS+(col+1);
Log.v("row", "=====>"+row);
Log.v("col", "=====>"+col);
Log.v("position", "=====>"+position);
count++;
if(count%4==0)
{
Log.v("count", "=====>"+count);
//I would like to implement swap code here
}
return true;
}
根据上面的代码,我如何在 onTouchEvent() 中交换(互换图像)位图图像实现
请任何人帮助我......
最佳答案
请将您想要的功能定义为..
“这里我想交换用户同时选择两个气泡的气泡。”
不是一个完整的句子。
关于android - 如何在android中的View上交换位图图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8708324/
我是一名优秀的程序员,十分优秀!