【发布时间】:2015-02-05 11:39:08
【问题描述】:
我是 android 新手,我想制作一个简单的应用程序,我想在其中显示模拟时钟。我知道时钟是如何工作的,但我无法设计它。到目前为止,我已经画了圆圈,现在我想附加资源,但我不知道该怎么做。任何人都可以帮助我并给我程序。谢谢
public class MyView extends View
{
public MyView(Context context)
{
super(context);
}
@Override
protected void onDraw(Canvas canvas)
{
super.onDraw(canvas);
int x = getWidth();
int y = getHeight();
int radius=200;
int w=2*radius;
int h=2*radius;
boolean changed = mChanged;
if (changed) {
mChanged = false;
}
boolean seconds = mSeconds;
if (seconds ) {
mSeconds = false;
}
// radius = 200;
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.BLACK);
canvas.drawPaint(paint);
// Use Color.parseColor to define HTML colors
paint.setColor(Color.parseColor("#b60f2e"));
canvas.drawCircle(x /2, y / 2, radius, paint);
paint.setColor(Color.parseColor("#f6e1ff"));
canvas.drawLine(x/2, y/2 + radius,x/2, y/2-15 + radius, paint);
canvas.drawLine(x/2 , y/2 - radius,x/2 ,y/2 - radius+15, paint);
canvas.drawLine(x/2 + radius, y/2 , x/2 + radius-15, y/2, paint);
canvas.drawLine(x/2 - radius, y/2, x/2 - radius+15, y/2, paint);
canvas.save();
canvas.rotate(mHour / 12.0f * 360.0f, x, y);
final Drawable hourHand = mHourHand;
hourHand.draw(canvas);
canvas.restore();
}
}
【问题讨论】:
-
“添加资源”是什么意思?
-
您还可以从您的资源中在画布上绘制可绘制对象
-
是的,我想从可绘制文件夹中将时针和分针放在画布上,但我不知道该怎么做。
-
为什么不使用 AnalogClock 视图?你可以在你的类中扩展它并覆盖某些方法。developer.android.com/reference/android/widget/AnalogClock.html
-
是的,我知道,但我想自己建造
标签: android canvas view time clock