我需要在画布上画一些东西,然后舔每一个。我上了课
public class PlayGameView extends SurfaceView implements SurfaceHolder.Callback
在本课程中我有onDraw方法
@Override
public void onDraw(Canvas canvas) {
Paint paint = new Paint ();
Bitmap wrench = BitmapFactory.decodeResource(getResources(), R.drawable.wrench);
canvas.drawColor(Color .BLACK);
for(int i = 0; i < 4; i++) {
for(int j = 0; j < 4; j++) {
canvas.drawBitmap(wrench, canvas.getWidth()/2 - wrench.getWidth()*2 + i*wrench.getWidth(), 0 + j*wrench.getHeight(), null);
}
}
}
和内部类Thread。 所以,在xml文件中我添加了这个视图
<com.cerbertek.PlayGameView
android:id="@+id/play_field_surface_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"/>
并且要在活动类
中添加clicklistener public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.play_game);
playField = (PlayGameView) findViewById(R.id.play_field_surface_view);
playField.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(PlayGameActivity.this, "ОХУЕТЬ", 2000);
}
});
}
但没有任何反应。没有吐司。当我调用getWidth方法时它向我展示了零!但我看到了图片)
我该如何解决我的问题?