所以基本上我的畫布上繪製了一些圖像視圖,但是當我嘗試設置onclick監聽器並嘗試處理事件時,它不起作用。在畫布上繪製的視圖上設置onClickListener
public class DrawView extends View implements OnClickListener{
Paint paint = new Paint();
RectF rf = new RectF(30, 30, 80, 80);
BallView ball = new BallView(getContext());
Bitmap bmp = BitmapFactory.decodeResource(getContext().getResources(), R.drawable.ic_launcher);
public DrawView(Context context) {
super(context);
}
@Override
public void onDraw(Canvas canvas) {
ball.setOnClickListener(this);
ball.draw(canvas);
canvas.drawBitmap(bmp, 110, 10, paint);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getContext(), "Mock", Toast.LENGTH_SHORT).show();
}
}
BallView.java
public class BallView extends ImageView {
Paint b = new Paint();
public BallView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public void onDraw(Canvas c){
b.setColor(Color.BLUE);
c.drawCircle(50, 50, 40, b);
}
}
*它不工作* - 而到底發生了什麼?什麼是'BallView'?如果它擴展View,請在'DrawView'的構造函數中移動* ball *和* bmp *的初始化。 – Luksprog 2013-03-16 08:44:57
是否可點擊?你有沒有爲它調用過setClickable(true)? – sandrstar 2013-03-16 08:48:02
@Luksprog按照你的說法做了,但沒有工作 – 2013-03-16 08:51:21