如何在 TouchEvent 上更改位图资源
How To Change The Bitmap Resource On TouchEvent
这应该很简单吧?!
所以,我有一个 Gameobject
作为按钮,我在 GamePanel
上引用它,它扩展 SurfaceView
像这样:
bby = new Buttons(BitmapFactory.decodeResource(getResources(), R.drawable.babybutton),123 ,114 ,1);
bby
已绘制且工作正常,
我的问题是如何在 Touch 上将资源 (R.drawble.babybutton) 更改为不同的资源,例如 (R.drawble.babybutton2)?
就像按下按钮的动画!
提前致谢
(如果我的问题看起来很愚蠢,请不要不喜欢!我对此很陌生)。
如果您想更改按钮在表面视图上的触摸可绘制对象。比你可以在你的表面视图中覆盖这个方法 class.
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
//here you can set an another drawable to your button or can do something else
break;
}
return true;
}
在您的 activity 中,在表面视图上设置一个 touchListener。
初始化 surfaceView
之后。将此 surfaceview
传递给
surfaceView.setOnTouchListener(surfaceView)
我可能误会了你,但如果你想改变按钮资源,你应该这样做:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
runOnUiThread(new Runnable() {
@Override
public void run() {
button.setBackgroundResource(R.drawable.icon);
}
});
}
});
这应该很简单吧?!
所以,我有一个 Gameobject
作为按钮,我在 GamePanel
上引用它,它扩展 SurfaceView
像这样:
bby = new Buttons(BitmapFactory.decodeResource(getResources(), R.drawable.babybutton),123 ,114 ,1);
bby
已绘制且工作正常,
我的问题是如何在 Touch 上将资源 (R.drawble.babybutton) 更改为不同的资源,例如 (R.drawble.babybutton2)?
就像按下按钮的动画!
提前致谢
(如果我的问题看起来很愚蠢,请不要不喜欢!我对此很陌生)。
如果您想更改按钮在表面视图上的触摸可绘制对象。比你可以在你的表面视图中覆盖这个方法 class.
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
//here you can set an another drawable to your button or can do something else
break;
}
return true;
}
在您的 activity 中,在表面视图上设置一个 touchListener。
初始化 surfaceView
之后。将此 surfaceview
传递给
surfaceView.setOnTouchListener(surfaceView)
我可能误会了你,但如果你想改变按钮资源,你应该这样做:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
runOnUiThread(new Runnable() {
@Override
public void run() {
button.setBackgroundResource(R.drawable.icon);
}
});
}
});