- Forum-Beiträge: 141
24.04.2017, 12:28:50 via Website
24.04.2017 12:28:50 via Website
Hallo zusammen,
meine Frage ist aktuell mehr konzeptioneller Natur / wie ich es am besten Umsetze nach "state of the art". Daher möchte ich mir gerne eure Meinung dazu einholen. Falls etwas unklar an meiner Beschreibung ist, bitte einfach nachhaken. Es folgt ein etwas länglicher Text.
Ich möchte für meine App 2-3 Tab's zwischen welchen ich wechseln kann; gerne auch mit swipen. Nun gibt es mehrere Möglichkeiten dies umzusetzen. Aktuell nutze ich ein TabLayout, ViewPager und Fragments für die einzelnen Seiten (3 Tabs mit swipe-funktion).
Die UI sieht erstmal so aus wie ich es möchte, allerdings bin ich dann an etwas geraten, was mich zum Überlegen gebracht hat: ich kann via XML Buttons oder ImageViews via onClick-Funktionen erstellen, welche mir in der MainActivity dann gewisse Funktionalitäten bereitstellen. So weit so gut. Falls ich aber eine simple ListView nehme, funkt mir hier (zumindest soweit ich es verstanden habe) der ViewPager dazwischen. OnClick lässt crashen, einen Listener in der MainActivity hinzufügen löst das Problem wegen dem ViewPager auch nicht.
Ich bin eigentlich davon ausgegangen, da die Fragments zum Parent gehören, ich alles in der MainActivity implementieren kann - bzw. auf die im Layout enthaltenen Elemente zugreifen kann. Um meine Liste "onClick" fähig zu machen habe ich die ListView jetzt mit .setOnItemClickListener und nem switch-case direkt im Fragment versehen.
Ist das die korrekte Lösung oder bin ich hier abseits von dem Ansatz wie es üblicherweise implementiert wird? Ich möchte später gerne eine Custom ListView mit versch. PNG's und Text pro Zeile haben, die dann bei Antippen reagiert und via. Intent ein neues Fenster öffnet. Von dem neuen Fenster soll mit mit der SQLite und einem background service "kommuniziert" werden können.
Freue mich auf Meinungen und Anregungen falls ich etwas anders angehen sollte! Danke!
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.