我想在每次触摸事件时更改图像视图上显示的图像。下面的代码完成了这一点。Android Imageview正在为之前的图像绘制新图像
public class TelephoneFragment extends Fragment {
ImageView telephoneImageView;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.telephone_fragment,
container, false);
telephoneImageView = (ImageView)view.findViewById(R.id.telephoneImageView);
telephoneImageView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
telephoneImageView.setImageDrawable(getResources().getDrawable(R.drawable.telephone_clicked));
}
if(event.getAction() == MotionEvent.ACTION_UP){
telephoneImageView.setImageDrawable(getResources().getDrawable(R.drawable.telephone));
}
return true;
}
});
return view;
}
}
当我改变了手机的方向,并尝试触摸图像再次,新的图像绘制在前面的图像有但是尽管这一个问题,那就是以前的图像在背景中仍然可见。有人能指导我发生什么事吗?谢谢。
- 我尝试使用setImageResource(),而不是setImageDrawable,但问题仍然存在。
你试过了setImageBitmap –
好吧,我也会试试。 – nave
setImageBitMap也给出了同样的问题。 – nave