Viele Samples - schwer zu verstehen :/

  • Hallo, ich weiß noch gar nicht wie das Problem genauer beschreiben soll.


    Nehmen wir ein Beispiel:
    Ich dachte mir, geil, fängste an mal mit dem "Ding" rumzuprobieren, wo man so Navigationselemente an der Seite hat, sich einen auswählt und die passende Maske/Activity/Layout? angezeigt wird.


    Erste Tutorial:
    Kam schon in der ersten Zeile Code der Fehler "ActionDrawer could ne be resolved to a type" o. ä.
    Google, Android Tools->Get Support Libraries oder ähnlich, etc. brachte nichts.


    Nächstes Tutorial:
    Da sehe ich, dass man vlt. 4 Fragmente hat, also für jede Seite eins, allerdings nicht gegenseitig nicht auf sich zugegriffen werden kann, da ja immer nur eins angezeigt wird und somit eine Instanz hat, man kann ja nicht auf nicht instanzierte Instanzvariablen zugreifen (wasn Deutsch).


    Aber was ich da wieder nicht verstanden habe war, dass der Tutor, bzw. das Sample 1 Label/TextView hatte, was auf allen 4 Fragmenten genutzt wurde und nur je nach Auswahl vom Text her angepasst wurde.


    Ich würde allerdings gerne 4 einzelne Layouts designen (oder jenachdem wie viele ich benötige) und diese einzelnd mit Code versehen.


    Mittlerweile bin ich froh, dass ich mit Ach und Krach ein andere Sample aus meinem Buch von Thomas Kuenneth zum laufen bekommen habe, wo ich eine ActionBar bzw. dort ein TabPage-Layout verwende.


    Das ist manchmal so schwer und nervenrauben :/..


    Wie kann ich die Geschichte mit den einzelnen Layouts vernünftig umsetzen?
    Habt ihr sonst Tipps?


    Android und Java schrecken mich Aufgrund dieser Tatsachen immer wieder ab, aber der Wille das irgendwann doch geschissen zu bekommen ist größer :/..


    Hätt ich doch nur nicht mit dem Komfort von .NET angefangen T.T..

  • Sooo hab nun einiges geschafft bekommen aber trotzdem noch ne Frage.


    Wenn ich mir jetzt ein paar neue Layout-XMLs anlege, kann ich diese auch außerhalb der MainActivity mit Code versehen? Also für jede XML eine eigene neue Java Klasse worin ich dann Methoden für die jeweiligen OnClicks schreiben kann?


    Hatte bisher versucht eine neue Java Klasse anzulegen und diese dann durch die MainActivity zu extenden, aber so klappt wohl nicht.


    Danke schonmal!

  • XML Dateien sind nur Layoutdateien bzw. Datendateien


    Wenn du bestimmte Funktionalität kapseln willst kannst du das z.b.


    mit Fragmenten machen, wenn du es noch kleinteiliger willst kannst du Dir auch Customviews programmieren und da Funktionalität verbauen. Die
    Frage ist halt immer wie sinnvoll ist das.



    Wenn du etwas genauer umreissen könntest was du eigentlich machen willst, könnte man Dir eventl einen Tipp geben was du wie erreichst. Nur Tutorials anschauen und Samples versuchen zu kompilieren bringt in meinen Augen nix, wenn man die Grundlagen (in diesem Fall "Aufbau einer AndroidApp") nicht wirklich erfasst hat, das führt dann oft zu falschen Annahmen bzw. ganz komischen Ideen.




    Code
    Wenn ich mir jetzt ein paar neue Layout-XMLs anlege, kann ich diese auch außerhalb der MainActivity mit Code versehen?


    Ja zb. in Fragmenten


    Code
    Also für jede XML eine eigene neue Java Klasse worin ich dann Methoden für die jeweiligen OnClicks schreiben kann?


    Das wäre dann ein Fragment mit eigenen OnClicklistner

  • Das hatte ich an sich verstanden, aber Teils verwirrt mich die ganze GEschichte echt, bin momentan pausenlos am Büffeln, dass ich da weiter komme und mehr verstehe.


    Also mit den Dateien hattest du das schon richtig verstanden.
    Ich bin bisher der Fan, die ganze Geschichte mit "OnClick" via Designer zu regeln, also in den jeweiligen xml Dateien in den Eigenschaften die Methode festzulegen.


    Finde ich irgendwie besser, mich stört dieses verschachtelte Gefrimel im Code, wenn man den OnClickListener benutzt.


    Ich müsste dann mal schauen, wie ich das zb. getrennt aufbaue, ich habe mehrere Oberflächen, also mehrere XMLs mit verschiedenen Controls/Views im Layout.


    ZB. Page_1.xml, Page_2.xml, etc.
    Kann ich dann nicht zb. eine weitere Java-Datei anlegen, die dann zb. Page_1.java nennen und in dieser die OnClick Methode angeben die in Page_1.xml als OnClick deklariert ist?


    Er meckert da immer, dass er die OnClick Methode nicht findet, außer ich deklariere Sie in der MainActivity.

  • Die onClick im XML werden nur von einer Activity verarbeitet. Selbst wenn du das Layout in einem Fragment geladen hast (warum auch immer Google das so gemacht hat). Eine einfache Java-Klasse wird also nicht funktionieren. Du könntest höchstens für jedes Layout eine neue Activity erstellen, aber so macht man das eigentlich nicht mehr. Man verwendet schon, wenn möglich, Fragmente. Und bei denen kommst du halt nicht drum rum die onClicks in der Hauptactivity zu deklarieren.


    Aber wie killPhil75 schon gesagt hat, wäre es nicht schlecht zu wissen, was du vor hast. Dann könnte man eventuell besser helfen.


    block_

  • Nunja, momentan bin ich einfach dabei ein Layout zu finden was mir gefällt, also eine Art und Weise, mich erstmal ranzutasten.


    Aktuell finde ich folgendes gut (was ich auch mittlerweile gemeistert habe):
    1. Eine Activity Login, Plus zugehöriges Layout
    2. Ist die Activity fertig, also der User hat sich mit dem Login-Button erfolgreich angemeldet, dann kommt ein NavigationDrawer (?), mit dem man Links ein Element aus der Navigation auswählen kann, um dann auf die jeweilige Seite zu kommen.


    Ne TabPage sozusagen.


    Was konkretes liegt noch nicht vor, ist erstmal nur gebastel mit n paar Spaß-Ideen.


    Danke für eure Antworten!

Jetzt mitmachen!

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