2017-09-18 2 views
0

Ich versuche, eine App zum Zeichnen einiger einfacher Linien in einer Leinwand zu erstellen. Ich möchte, dass die Leinwand die oberen 50% des Bildschirms einnimmt und die unteren 50% des Bildschirms für Schaltflächen und andere Bereiche frei lässt. Ich verwende derzeit setContentView(canvas);, die es so macht, dass die Leinwand 100% des Bildschirms einnimmt.Android machen Leinwand Abdeckung halben Bildschirm

Antwort

0

Sie können eine Klasse erstellen, die die Ansicht erweitert und die Zeichnung in dieser Ansicht auf die Methode onDraw() dieser Ansicht ausführt. Fügen Sie diese Ansicht Ihrem Layout mit einer beliebigen Breite oder Höhe hinzu.

+0

Wie füge ich es zu meinem Layout mit Breite und Höhe meiner Wahl hinzu? –

+0

Angenommen, Sie haben eine Klasse erstellt. MyView extends Ansicht im Ordner com.example.views java. Sie fügen dies zu xml hinzu, indem Sie eine weitere Ansicht (TextView, imageView usw.) hinzufügen oder in Runtime instanziieren. Sie können suchen, benutzerdefinierte Ansicht auf Laufzeit oder XML hinzuzufügen, Sie werden viele Beispiele erhalten. Das Aufrufen von myView.invalidate() ruft onDraw (Canvas-Canvas) dieser Ansicht auf, und Sie können alles, was Sie möchten, auf die gleiche Art und Weise zeichnen, wie Sie auf eine Arbeitsfläche zeichnen. – Thracian

Verwandte Themen