我無法在屏幕上繪製圓圈。我不知道我是否正確接近,或者如果我必須使用位圖。以下是我創建的Circle類,專門爲我的規範創建一個圓。Android:屏幕上的繪圖圈
package com.example.alex.parkinsonsdiseaseapp;
import android.view.View;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Paint;
public class Circle extends View {
private final float x;
private final float y;
private final int r;
private final Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
public Circle(Context context, float x, float y, int r) {
super(context);
mPaint.setColor(0x000000);
this.x = x;
this.y = y;
this.r = r;
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawCircle(x, y, r, mPaint);
}
}
下面是使用上述類的活動。
package com.example.alex.parkinsonsdiseaseapp;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.Toast;
import android.widget.LinearLayout.LayoutParams;
public class FingerTappingActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_finger_tapping);
LinearLayout circle = (LinearLayout) findViewById(R.id.lt);
View circleView = new Circle(this, 100, 100, 100);
circleView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
circle.addView(circleView);
Toast.makeText(FingerTappingActivity.this, "Test", Toast.LENGTH_SHORT).show();
}
}
whay不是xml來繪製圓爲什麼這麼多代碼? –
你沒有指定'Circle'的寬度和高度 –
是的@Rod_Algonquin是對的,你沒有指定'Circle' Views維度,所以它們可以是零,因此根本就不會畫任何東西。 –