我认为代码是正确的,但是我无法找到问题所在。谁能帮忙找出不正确的地方吗?
多数民众赞成活动文件:
package com.example.crazyeights;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class CrazyEightsActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MyView view = new MyView(this);
setContentView(view);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.crazy_eights, menu);
return true;
}
}
多数民众赞成在我想在屏幕上显示:
package com.example.crazyeights;
import android.content.Context;
import android.view.View;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
public class MyView extends View{
private Paint redPaint;
private int circleX;
private int circleY;
private float radius;
public MyView(Context context) {
super(context);
redPaint = new Paint();
redPaint.setAntiAlias(true);
redPaint.setColor(Color.RED);
circleX = 100;
circleY = 100;
radius = 30;
}
protected void OnDraw(Canvas canvas){
canvas.drawCircle(circleX, circleY, radius, redPaint);
}
}
您指定的大写OnDraw()方法不会那样调用。使用自定义视图时,实际上需要重写onDraw()方法,例如:
@Override
protected void onDraw(Canvas canvas) {
canvas.drawCircle(circleX, circleY, radius, redPaint);
}
我对其进行了测试,并绘制了一个红色圆圈。请参阅此处有关“自定义工程图”的文档,特别是“覆盖onDraw()”部分。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句