Erweiterte Button Funktion

  • Antworten:63
swa00
  • Forum-Beiträge: 3.704

19.06.2017, 23:00:54 via Website

Tipp : Lass einfach mal erst dein Wischen weg und setze dich mit CustomAdapter und List/RecycleView
auseinander.

Erst dann , wenn das zu 100% sitzt und du auch jeden einzelnen Punkt verstehst,
machst du Animation/Wischen etc .

Du kannst kein Haus bauen , wenn du noch nicht weist , wie man eine Mauer mit Zement & Wasser hochzieht.

Liebe Grüße - Stefan
[ App - Entwicklung ]

Pascal P.Genetix x

Antworten
Genetix x
  • Forum-Beiträge: 59

20.06.2017, 18:07:55 via Website

Ist denn das ändern der Schriftart und Schriftfarbe im ListView nur mit nem Custom Adapter möglich oder auch mit dem Standard ArrayAdapter?

Antworten
Genetix x
  • Forum-Beiträge: 59

20.06.2017, 18:10:33 via Website

Ok ich habs mir gerade selbst beantwortet ...

Also wenn ich eigene Schriftart und Farbe will dann muss ich den Custom Adapter nehmen womit ich dann aber nicht mehr Einträge ohne weiteres von einer Liste zur anderen verschieben kann (whew)

Antworten
swa00
  • Forum-Beiträge: 3.704

20.06.2017, 20:54:37 via Website

Falsch ,

Dein Array , welches du dem Adapter übergibst , verwaltest du ausserhalb des Adapters.
Und das Array kannst du hin und herschieben wohin du magst

Liebe Grüße - Stefan
[ App - Entwicklung ]

Genetix x

Antworten
Genetix x
  • Forum-Beiträge: 59

20.06.2017, 20:57:32 via Website

Also kann ich beispielsweise bei einer Liste mit den Einträgen: China, Japan, Russland, Türkei

Den Eintrag China einfach so in eine andere Liste schieben auch mit Custom Adapter?

Denn alle Lösungsansätze die genau das tun beinhalten den Begriff "remove" in der MainActivity und das ging ja bei mir nicht.

Antworten
swa00
  • Forum-Beiträge: 3.704

20.06.2017, 21:14:12 via Website

Wenn du eine Liste hast e.g. ArrayList

dann kannst du alle möglichen Funktionen drauf anwenden.
https://developer.android.com/reference/java/util/ArrayList.html

UND ZWAR AUSSERHALB DES ADAPTERS

Und wenn du die Liste verändert hast , dann macht du ein notifyDataChange auf den Adapter

Liebe Grüße - Stefan
[ App - Entwicklung ]

Genetix x

Antworten
Genetix x
  • Forum-Beiträge: 59

20.06.2017, 21:16:44 via Website

Dachte das man dafür den ArrayAdapter braucht weil Pascal das oben gemeint hatte. Es sei denn ich hab ihn falsch verstanden.

Und ja in deinem verlinkten Tutorial geht das so denn dort wird ein ArrayAdapter verwendet, der das schon von "Haus" aus kann. Ein CustomAdapter kann das nicht, und genau das hast du hier vorliegen.
Das lässt sich leicht nachprogrammieren, wenn du hier nachschause wie das im ArrayAdapter umgesetzt wird:

Antworten
Genetix x
  • Forum-Beiträge: 59

21.06.2017, 12:29:13 via Website

Es geht ja darum den Eintrag per onClick in eine andere Liste zu verschieben und das kann ich dem Link nicht so ganz entnehmen weil es ja in der Liste nicht darum geht einen Eintrag per onClick einer anderen Liste zu zu weisen.

Antworten
swa00
  • Forum-Beiträge: 3.704

21.06.2017, 12:39:08 via Website

Georg

bei aller Liebe und das schreibe ich jetzt zum wiederholten (und letzten) Male.

a) Du hast noch gar nicht verstanden , wie man ein Array auf einen Adapter anwendet.
b) Bevor du das nicht inne hast , wirst du dein Vorhaben mit Nichten umsetzen können.

Hättest du das schon verstanden ( siehe auch beispiel) dann hättest du die Frage mit dem Verschieben gar
nicht mehr gestellt. - Denn dein "Ah Ha" käme ganz von alleine.

Tip : Mach die ein neues leeres Projekt und spiele einfach dort erst mal nur mit
Array & Adapter rum.

Ein fertiges "VerschiebeBeispiel" wirst du eher NICHT im Netz finden.
Auch nicht bei uns - Dazu bist DU der Programmierer.

DU bist dafür verantwortlich , was der User letztendlich machen kann
Und das kannst DU nur dann Umsetzen , wenn DU dein Handwerk verstehst .

Programmieren hat nichts mit Lego zu tun, sondern man muss sich seine Bauteile i.d.R. selbst
basteln. Wir können Dir maximal sagen, was für Bausteine du verwenden könntest.
DU musst sie dann nach deinen Vorstellungen zusammensetzen.

Und auch zum letzten Male : Dein "Verschieben" im Array musst DU selbst machen nachdem du die
"lösch-aktion" im Adapter erkannt hast.
Und dann kannst du das aktualisierte Array wieder an beide Listen schicken

so, jetzt genug "geDUzt" :-)

— geändert am 21.06.2017, 13:04:00

Liebe Grüße - Stefan
[ App - Entwicklung ]

Genetix x

Antworten
Genetix x
  • Forum-Beiträge: 59

21.06.2017, 13:04:58 via Website

Ich weiß das ich meine remove und add funktion auf die ArrayListe anwenden muss und das wenn meine Arrayliste zb "Zutaten" heißt .. was sie ja in meinem Code tut und die andere Liste Zutaten2 heißt. Der Code Schnipsel dann so aussehen muss:

Zutaten.remove(tomato);
Zutaten.add(tomato);

Das einzige was ich nicht weiß wie ich es hinbekomme das das ganze mit onClick funktioniert.

Antworten
swa00
  • Forum-Beiträge: 3.704

21.06.2017, 13:12:42 via Website

Ich glaube, du gehst mal für ein paar Stunden in die Sonne :-)

Bleiben wir bei meinem letzten Link :

Was steht da im Adapter ? ( Clicks) und wie wertet man den Klick aus ?
(siehe CustomListViewAndroidExample.java file)

Liebe Grüße - Stefan
[ App - Entwicklung ]

Genetix x

Antworten
Genetix x
  • Forum-Beiträge: 59

21.06.2017, 13:32:04 via Website

Dann befolge ich lieber deinen ersten Rat und frage hier nicht mehr nach. Ich versteh es nämlich nicht. Vlt auch weil ich das ganze in einer json Datei gespeichert habe.

Muss ich halt ohne font auskommen.

Trotzdem danke.

Antworten
Genetix x
  • Forum-Beiträge: 59

21.06.2017, 21:48:18 via Website

Ich wollt hier nochmal danke sagen. Ich habs jetzt hinbekommen mit der Arraylist und es funktioniert auch soweit. Nur das er das Item in der 2. ListView added muss ich noch hinbekommen.

Antworten