J'essaie d'ajouter des points à la Path
et la ligne de dessin entre eux, mais rien n'apparaît.Android. Toile. Dinamiquement ajouter le point de chemin
J'ai vue personnalisée:
public class BreakDownBar extends View {
private List<Point> points = new ArrayList<>();
private Path path = new Path();
private Paint p = new Paint();
public BreakDownBar(Context context) {
super(context);
}
public BreakDownBar(Context context, AttributeSet attrs) {
super(context, attrs);
p.setStrokeWidth(5);
p.setStyle(Paint.Style.STROKE);
}
public void addPoint(Point point) {
points.add(point);
path.rewind();
reDraw();
}
public void startPoint(Point point) {
points.add(point);
}
private void reDraw() {
Canvas canvas = new Canvas();
path.moveTo(points.getFirst().getX(), points.getFirst().getY());
for (int i = 1; i < points.size(); i++) {
path.lineTo(points.get(i).getX(), points.get(i).getY());
}
canvas.drawPath(path, p);
canvas.drawColor(Color.BLACK);
draw(canvas);
invalidate();
}
}
point class
:
public class Point {
private float x, y;
...getters and setters
}
Tout en ajoutant de nouveaux points au List
je peux voir penser le résultat attendu dans le journal, mais rien ne se passe à l'écran. Ce qui m'a manqué de faire apparaître la ligne sur l'écran?
Cool, merci pour l'explication! –
merci, bonne chance :) – MatPag