【问题标题】:How to swap the bitmap images on View in android?如何在android中的View上交换位图图像?
【发布时间】:2012-02-01 06:14:20
【问题描述】:

我正在使用用于在 android 屏幕上显示气泡图像的小型应用程序。我已经显示了资源目录中的所有气泡图像。我在视图类中实现了如下代码。

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);
            }
        }

}

通过使用上述方法,我从 items[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 bitmap swap touch-event


    【解决方案1】:

    请将您想要的功能定义为..

    “这里我想交换用户同时选择两个泡泡的泡泡。”

    不是一个完整的句子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-05
      • 1970-01-01
      相关资源
      最近更新 更多