editText durch zwei Textwatcher untersuchen lassen

  • Und dann auch noch auf einen so sonderbaren Framework wie Android.
    Wie ich schon am Anfang sagte halte ich deinen Lösungsansatz für nicht sehr sinnvoll.
    Überdenke ihn noch mal .


    Was willst du eigentlich machen?
    wenn es eine Zeiterfassung werden soll ist eigentlich eine DatenBank das Herzstück.
    Ich würde Alle eingaben in die DB machen und diese dann abfragen und anzeigen und zwar mit ListViews.


    Wehr gibt einen der von Programmierung keine oder nur sehr wenig ahnung hat so eine Aufgabe?

  • Die Grundidee ist Folgende:


    Ein Arbeiter kriegt ein Tablet mit der App in die Hand gedrückt und soll über den Tag verteilt seine bearbeiteten Aufträge mit Maschinentyp, Start- und Endzeit und Kommentaren angeben.
    Am Ende speichert er alles und sendet seine Daten an die Datenbank.
    Nun will ich halt, dass er keinen Unsinn in die Zeitspalten eintragen kann


    Ich hab gerade mal getestet, es liegt definitiv an



    ich habe dazu die Einträge, die eine neue Zeile einbringen, mal rausgenommen, sodass in der MainActivity nur noch stand

  • ja, ich befürchte fast, dass ich da nie hinkomme :D


    wo kann denn hier der Wurm sein?

  • Ok werde es am we vielleicht mal testen, u d dein Projekt laden.
    Wie gesagt finde ich den ansatz total ungünstig für dein Vorhaben. Und was hast du wenn das leuft auch nicht viel. Ok an Erfahrung gewonnen. Eingaben macht man in eine DB und man prüft sie vorher. Zeit Eingaben wurde ich mir den timepicker machen zb.

  • Ok du hast einen breackpoint Sinnvoller ist es den in die Klasse zu setzen nicht in der Main. Zu schauen ob da auch deine ze variable den richtigen Kontext hat. Und somit deine text3 auch das was du eingegeben hast auch bekommt. Du kannst deinen Code auch im einzel Schritt durcharbeiten und die die Variablen anschauen.

  • hab jetzt mal spaßeshalber den TimeFormat-Part mit in den NewRowWatcher gepackt ala



    Resultat beim Debuggen

  • so was steht nun in dem String "String str = txt3.getText().toString();" ist es das was du eingegeben hast?

    da ich im Debug Mode war, konnte ich nichts eingeben
    jedoch hatte ich beim Starten auf "1" gedrückt, und das hatte er wohl gespeichert
    wie man im Debug Mode Werte eingibt, da les ich mich noch durch
    Im normalen Modus crasht die App, sobald ich was ins Feld txt3 eingeben will

  • wie ich schon in einen früheren Beispiele geschrieben habe bin ich mir mit diesem Code nicht sicher

    • MainActivity ze;
    • public newRowTextWatcher(MainActivity Zeiterfassung) {
    • ze = Zeiterfassung;
    • }

    mainactivity ist nicht richtig müsste Context heißen.
    Und wie gesagt beim Aufruf aus der Main kann es auch getApplicationContext() anstatt this sein

Jetzt mitmachen!

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