コード public class MainActivity extends Activity implements Runnable{ private Handler mHandler = new Handler(); CanvasView cv; Canvas c = new Canvas(); @Override protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); cv = new CanvasView(this); setContentView(cv); mHandler.postDelayed(this, 1000); } public void run(){ cv.x += 5; cv.y += 5; cv.draw(c); mHandler.postDelayed(this, 1000); } }
コード public class CanvasView extends View{ Paint paint = new Paint(); int x = 100, y = 100; int r = 50; public CanvasView(Context con) { super(con); } public void draw(Canvas canvas){ paint.setColor(Color.BLUE); paint.setStyle(Paint.Style.FILL); paint.setAntiAlias(true); canvas.drawCircle(x, y, r, paint); } }
円が1秒ごとにx軸に5、y軸に5だけ動くようなプログラムを作ったのですが、実行しても最初のx=100,y=100の点から動きません。
1秒後にrun()実行
↓
x,yを5だけ増やす
↓
draw()実行
↓
1秒後にrun()実行
としているつもりなのですがどこがだめなのでしょうか?
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/03/29 07:10
2016/03/29 08:04