Canvas mit Layout kombinieren.

  • Hallo,
    Ich möchte versuchen in ein bestehendes layout, sei es in einer xml oder dynamisch in der Java datei definirt, eine Canvas
    zu Integrieren. In den Bisherigen Beispielen habe ich immer nur gesehen, dass die Canvas klasse als Content View definiert wird.
    Hier mein Beispiel Code:


    Wie schaffe ich es jetzt zu der Canvas View noch Elemente wie z.B. einen Button einzubinden?
    Etwa mit einem LayoutInflater ?


    Danke für Antworten! B-)


    Gruß
    XDeveloper

  • Ok. Danke für die Antwort.
    Folgender Code:


    Und die canvas.xml:


    Bei meinen ersten Test kam jetzt folgender Fehler in der Log Cat:


    Ich kenne mich jetzt mit dem LayoutInflater nicht so aus.


    Was mache ich falsch?

  • Für den LayoutInflater muss deine innere Klasse muss static sein, um unabhängig vom Zustand der äußeren Klasse zu sein.


    Wenn du den Konstruktor noch mit einfügst, werden die Attribute aus dem XML-File durch den super()-Aufruf weitergereicht und du kannst du die üblichen Attribute wie layout_width usw. benutzen.


    Code
    public Panel(Context context, AttributeSet attr)
        {
            super(context, attr);
        }


    block_

  • Hey,


    ich hatte heute mit dem selben Problem zu tun und möchte dir noch einen anderen weg zeigen dein Problem zu lösen:


    http://stackoverflow.com/quest…rfaceview-from-layout-xml


    darin steht alles was du wissen musst, das ganze funktioniert etwa so wie du es schon kennst, nur das du auf den canvas deiner eigens erstellen Klasse zeichnest die du vorher in deinem Layout definiert hast. Du musst also nicht deine "DrawPanel"-Klasse als ContentView setzen, sondern wie du es meiner Meinung nach wünscht, dein Layout.


    das ganze lässt sich natürlich auch auf einfache weise um ein Thread erweitern.


    Ich hoffe ich konnte dir helfen,


    Gruß

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!