Fragen zu all den Layouts

P

Premox

Neues Mitglied
0
Hallo zusammen,

ich bin selbst Anwendungsentwickler, programmiere sehr gerne in iOS und wollte mich jetzt an Android wagen.

Kurz meine Idee zusammengefasst:
Für den Anfang will ich für meine Mannschaft eine App schreiben, in der untereinander die Namen mit zwei Buttons (einen für Plus und einen für Minus) und in der Mitte der zwei Buttons ein Textfeld, mit der Anzahl der Getränke, die er trank.

Ich scheitere jedoch bereits bei der Auswahl der Layouts. Was wäre dafür das beste Layout? Ich dachte an ein TableLayout, doch ist es das beste? Könnte es nicht auch das Grid-, Linear- (horizontal) oder RelativeLayout sein?

Logik zum addieren und entfernen der Getränke ist schnell geschrieben gewesen. Ich finde auch kein passendes Tutorial für das TableLayout, wo ich ganz einfach erkennen kann, wie die Daten (Idee, wie in Android am Besten gespeichert werden?) per TableRow über eine Schleife hinzugefügt werden. Könnte mir da einer noch was empfehlen?

Ich will jetzt keine Diskussion zwischen iOS und Android lostreten, aber irgendwie fiel es mir in iOS sehr viel einfacher alles zu verstehen, egal ob Swift oder Objective-C, vielleicht stelle ich mich auch in Java dafür etwas sehr dumm an.

LG
 
Hallo Premox,

herzlich willkommen im Forum

Unter Android musst du halt mehr Arbeit beim Layout aufwenden, da die
Vielzahl von Screenauflösungen zu berücksichtigen sind.

a) Ich würde dies in einem LinearLayout (vertical) unterbringen.
b) Innerhalb diesem dann genestete LinearLayouts (horizontal)
c) Und das Ganze dann genestet in einem ScrollView (für kleine , kurze Displays)

Beispiel :

Code:
--  RelativeLayout
    -- ScrollView
        -- LinearLayout (vertical)
           -- VItem 1
           -- VItem 2
           -- LinearLayout (horizontal)
              -- HItem1 | HItem2 | HItem3
           -- VItem 3
         --
      --
---

P.S Bitte verwende als "Anfänger" keine ConstraitLayouts !

Speicherung der Daten : SQLite

Viel Erfolg
 
Zuletzt bearbeitet:
Hallo Premox,

da ich schon ca. 20 Apps für Android und iOS (in Swift) erstellen durfte, kenne ich ziemlich gut den Unterschied zwischen Autolayout und den Layouts in Android.
Auch wenn Stefan dir von ConstraintLayouts abrät, ich kann mir schon vorstellen, dass es für einen AutoLayout-Entwickler eine gute Alternative ist. Bitte beachte hierbei, dass ConstraintLayouts erst seit kurzem im SDK sind und noch nicht komplett "Bugfrei". Ich hatte bei meiner ersten App mit ConstraintLayouts aber überhaupt keine Probleme.

Ich würde aber an deiner Stelle eine ListView mit einem CustomAdapter verwenden. (Hier kannst du dann auch 200 Einträge erstellen, ohne Performance-Probleme zu bekommen.) ListView | Android Developers

Ein Adapter funktioniert ähnlich wie das DataSource / UITableViewDelegate bei einer UITableView. Du musst dann eben sagen, bei welchem Index was in einer Zeile drin stehen soll.
Bitte verwende unbedingt das Viewholder Pattern, damit die Liste auch "smooth" scrollt: Making ListView Scrolling Smooth | Android Developers

In einem Listeneintrag kannst du wieder ein ConstraintLayout versuchen. (Hier kenne ich die Performance nicht)

Glaub mir, es gibt Vor- und Nachteile bei beiden Entwicklerwerkzeugen und Portalen.
Ich finde die Storyboards und XIB-Dateien bei Apple richtig gut, bei Android schreibe ich immer noch gerne mein XML selber, damit es auch das macht, was ich will.
Um Mehrsprachigkeit zu unterstützen ist Android viel weiter vorne. Ich finde es immer lästig irgendwelche Extensions für "String" zu schreiben, damit er es mir aus der Sprache holt, von Mehrsprachigkeit im Storyboard möchte ich gar nicht sprechen.

Ich könnte noch mehr aufzählen, aber das sollte erstmal reichen. (Ich hoffe, meine Antwort ist für deine Frage überhaupt relevant, und ich nicht am Thema vorbei geschrieben habe :) )
 
  • Danke
Reaktionen: markus.tullius und swa00
Ergänzend würde ich statt ListView die RecyclerView erwähnen und verwenden. ListView hat so ein paar Problemchen, an denen man gerade als Anfänger gerne mal hängen bleibt. Bei RecyclerView muss man gewisse Sachen die ListView bietet zwar selbst machen, aber im wesentlichen ist es eine "bessere" ListView. Unterstützt auch von Haus aus das ViewHolder Pattern.
 
  • Danke
Reaktionen: Kardroid und swa00
Hallo deek,

danke für die Erinnerung an die RecyclerView. Die hat die Vorteile des Adapters und trotzdem auch noch weitere Verbesserungen zur ListView. (Ich habe bis jetzt immer nur ListView benutzt, hoffentlich erinnere ich mich beim nächsten Projekt da dran, dass es eine RecyclerView gibt.)
Hier gibt es ein gutes Tutorial, welches ich gerade angesehen habe: Android working with RecyclerView
 

Ähnliche Themen

B
Antworten
6
Aufrufe
1.002
jogimuc
J
B
Antworten
4
Aufrufe
406
bb321
B
L
Antworten
4
Aufrufe
1.307
lonnie9020
L
Zurück
Oben Unten