Androidプログラミング初心者質問スレ Part4
■ このスレッドは過去ログ倉庫に格納されています
0829デフォルトの名無しさん
2010/12/29(水) 10:02:49入門本を追っかけながら勉強してるんですが、その中にパスの描画というのがあって
paint.setStyle(Paint.Style.STROKE);
paint.setColor(Color.argb(255, 255, 255, 0));
Path path = new Path();
path.moveTo(110+0, 10+0);
path.lineTo(110+60, 10+10);
path.lineTo(110+20, 10+40);
path.lineTo(110+80, 10+50);
path.lineTo(110+0, 10+80);
canvas.drawPath(path, paint);
これで黄色いジグザグ線が描かれるのは理解したんですが、このあと更に
paint.setStyle(Paint.Style.STROKE);
paint.setColor(Color.argb(255, 0, 255, 0));
path.moveTo(210+0, 10+0);
path.lineTo(210+60, 10+10);
path.lineTo(210+20, 10+40);
path.lineTo(210+80, 10+50);
path.lineTo(210+0, 10+80);
canvas.drawPath(path, paint);
と書き加えて動作を見てみると、最初に描いたはずの黄色い線も全部緑になってしまいます
同じクラスの中で記述をしてるので、上から順番に命令が実行されて、変数?paintとpathはそれぞれ内容が書きかえられて
黄色いジグザグ、少し右にずれて緑のジグザグが描かれると思うのですが、そうならないのはどうしてでしょうか
ちなみに新しく Path path2 = new Path(); を宣言して、二回目のところの変数pathにかかわるところをpath2としてやると
正しく描画されることは確認しました
■ このスレッドは過去ログ倉庫に格納されています