S
SoSchautsAus
Ambitioniertes Mitglied
- 8
Hallo.
Dieser nichtssagende Threadtitel tut mir Leid aber ich wusste nicht, wie ich das Problem in nur ein paar Worten beschreiben sollte.
Vorne weg:
Wir vor ein paar Wochen in der Schule angefangen für Android zu programmieren. Inzwischen bin ich gerade dabei, eine kleine App zu schreiben. Jetzt bin ich aber an einem Punkt angekommen, an dem ich nicht mehr weiter weiß. Deswegen habe ich mich hier angemeldet. Ich hoffe ihr könnt mir helfen.
Hintergrund ist folgender:
Meine App soll, sobald sie mal fertig ist, linien zeichnen. In der Mittel soll ein kleiner Punkt zu sehen sein. Berühre ich nun den Bildschirm an einer Stelle, soll sich der Punkt langsam zu dem Punkt bewegen, an dem ich den Bildschirm berührt hab. Dabei soll aber eine Linie entstehen. So in etwa wie beim Programm "Paint", wenn man die Maustaste drückt und dann den Pinsel bewegt.
Mein Problem:
Mein Punkt bewegt sich zwar und wird auch neu gezeichnet aber die "alten" Punkte, also die mit den vorherigen Koordinaten verschwinden, sobald der Punkt neu gezeichnet wird. Das sieht dann wie bei Pong aus. Einfach nur ein Punkt, der sich bewegt. Ich will aber, dass sich eine Linie hinter dem Punkt bildet.
Ich hoffe, dass war einigermaßen verständlich. Falls nicht versuch ichs nochmal zu erklären.
Ich habe dazu eine neue Klasse erstellt, in der ich den Punkt mit canvas.drawCircle... zeichnen lasse.
Das was relevant ist sieht so aus:
Meine Activity sieht derweil so aus:
Hat da jemand eine Ahnung wie ich das hinkrieg, dass ich die Linie gezeichnet krieg? Google spuckt dazu nix mehr aus und was nützliches hab ich bisher auch nicht gefunden. Hoffe ihr könnt mir helfen.
MfG
Dieser nichtssagende Threadtitel tut mir Leid aber ich wusste nicht, wie ich das Problem in nur ein paar Worten beschreiben sollte.
Vorne weg:
Wir vor ein paar Wochen in der Schule angefangen für Android zu programmieren. Inzwischen bin ich gerade dabei, eine kleine App zu schreiben. Jetzt bin ich aber an einem Punkt angekommen, an dem ich nicht mehr weiter weiß. Deswegen habe ich mich hier angemeldet. Ich hoffe ihr könnt mir helfen.
Hintergrund ist folgender:
Meine App soll, sobald sie mal fertig ist, linien zeichnen. In der Mittel soll ein kleiner Punkt zu sehen sein. Berühre ich nun den Bildschirm an einer Stelle, soll sich der Punkt langsam zu dem Punkt bewegen, an dem ich den Bildschirm berührt hab. Dabei soll aber eine Linie entstehen. So in etwa wie beim Programm "Paint", wenn man die Maustaste drückt und dann den Pinsel bewegt.
Mein Problem:
Mein Punkt bewegt sich zwar und wird auch neu gezeichnet aber die "alten" Punkte, also die mit den vorherigen Koordinaten verschwinden, sobald der Punkt neu gezeichnet wird. Das sieht dann wie bei Pong aus. Einfach nur ein Punkt, der sich bewegt. Ich will aber, dass sich eine Linie hinter dem Punkt bildet.
Ich hoffe, dass war einigermaßen verständlich. Falls nicht versuch ichs nochmal zu erklären.
Ich habe dazu eine neue Klasse erstellt, in der ich den Punkt mit canvas.drawCircle... zeichnen lasse.
Das was relevant ist sieht so aus:
Alles unwichtige, wie irgendwelche Berechnungen hab ich jetzt mal rausgelöscht.public class Panel extends View {
public Panel(Context context) {
super(context);
ball = new Paint();
ball.setColor(Color.WHITE);
ball.setAntiAlias(true);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawCircle(x, y, Radius, ball);
invalidate();
}
}
Meine Activity sieht derweil so aus:
Auch hier hab ich alles unwichtige entfernt. Der Übersicht halber.public class ADKActivity extends Activity implements OnTouchListener{
Panel p;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
p = new Panel(this);
p.setOnTouchListener(this);
setContentView(R.layout.main);
LinearLayout layout = (LinearLayout) findViewById(R.id.Panel);
layout.addView(p);
}
}
Hat da jemand eine Ahnung wie ich das hinkrieg, dass ich die Linie gezeichnet krieg? Google spuckt dazu nix mehr aus und was nützliches hab ich bisher auch nicht gefunden. Hoffe ihr könnt mir helfen.
MfG