Beiträge von herrm_no

    Also kurz zusammengefasst.
    a) Der User kann erst daten ab ID1000 einfügen - Das hatte ich ja eh vor. (halt nur bei mir ab ID100) =OK (ich geb schon eine ID1000 in der Datenbank vor und durch Autoincrement wird dann ja ab der höchsten weiter gezählt)
    b) Ich weis genau was ich in ID1 - ID999 geändert habe = OK
    c) nun das Problem wie kann man eine ID oder eine Zelle von der Assets Datenbank in die App Datenbank kopieren. Ich weis nicht die Befehle und die Vorgehensweise.
    Also z.B kopie von ID11 zu ID11(ID11 besteht entweder schon und wird überschrieben oder wenn nicht neu erstellt.)


    Ich hab mal im Internet gesucht, aber ich werde nicht richtig schlau daraus. Finde bis jetzt auch noch nichts passendes (hängt warscheinlich noch daran wie ich suche)


    Hast du da vielleicht mal einen Beispielcode. :) :-[
    Gruß


    (Was ich gefunden habe ist z.B. sqldiff [options] database1.sqlite database2.sqlite) das wäre ja sehr einfach. Kann es aber erst am Wochenende testen.

    Hallo , na da bist du ja wieder. du bist echt super aktiv in dem Forum. Grosses Lob !


    Zu deiner Antwort. Die versteh ich jetzt nicht ganz Auto_Increment gibt ja nur die ID vor (das mit der ID ist ja nicht das Problem) und Alter_table ist nach dem was ich so gelesen habe nur wenn ich eine neue Colum mit hinzufüge.
    Mir geht es ja mehr darum bei einem Update der App und der Assets Datenbank nicht die Daten der User Datenbank zu verlieren. bzw. ich will zum Schluss einen Mix aus beiden.
    Jetzt fehlt mir entweder spezielles Wissen zu deiner Antwort, oder wir reden gerade aneinander vorbei, oder meine Fragestellung oben ist unklar.

    Hallo



    ich hatte schon einige SQLITE Datenbankfragen welche mir "jogimuc" bei "Anfängerfragen" super beantwortet hat.
    Diese Frage ist nun aber besser hier bei Datenbank Entwicklung aufgehoben.



    Ich bin auch noch ein Android / Java Anfänger und bräuchte deswegen etwas Hilfe
    Aktuelle Situation:
    Ich habe eine Datenbank im ASSETS Folder.
    Wenn bei der Installation noch keine Vorhanden ist wird diese ins Programm /data/data/*/databases/*.db kopiert.
    Meine Datenbank hat mehrere Colums (z.B.10)
    ID1-I100 wird geblockt und teilweise (z.B ID1 - ID 20) schon mit speziellen Daten gefüllt.
    Ab ID101 kann der User selbst noch Daten hinzufügen.
    Ebenso darf er Colum 9 und 10 (nur diese) der schon mitgelieferten Daten von ID1-* abändern.
    Nun meine Frage.
    Es kommt ein App Update.
    a) Dort stelle ich auch ein Update der Datenbank zu Verfügung (z.B. ID21-ID30) sind nun auch gefüllt (diese sind erst mal nur im ASSETS Folder).
    b) der User hat selbst in der App Datenbank Daten hinzugefügt (z.B. ID101-ID150)
    c) der User hat z.B. in der ID5,ID8,ID11 die Werte in der Colum 9 und 10 abgeändert.
    Wie muss ich vorgehen damit ich die Datenbank im ASSETS Folder mit der Datenbank in der APP zusammenbringe ohne Daten vom User zu verlieren.
    Also mehr oder weniger ein Vergleich beider und die Unterschiede in der App Datenbank wieder zusammenführen.



    Geht so was überhaupt?
    Und wenn ja wie? - welche Schritte benötit man dazu.



    Danke und Gruß

    nein die LED ist OK.
    Ich hatte noch einen Fehler. Ich habe die Seekbars in 2 verschiedene Variablen definiert. Das habe ich geändert. War aber nicht der Grund.
    Ich habe eine Abfrage gestartet getThumbOffset. Komischer weise stand der immer auf 10 und nicht auf 14 so wie ich ihn bei den seekbar Eigenschaften definiert habe. Beim App Start hat die Grafik immer gestimmt. 1 Mal die Seekbar verschoben und dann war der ThumbOffset wieder falsch.


    Ich habe es nun anders gelöst. Überall das ThumbOffset gelöscht und PaddingStart und PaddingEnd auf 7 gestellt (etwa die Hälfte von meiner LED).
    Danach musste ich zwar die height und width der Seekbars nochmal anpassen aber nun passt es.


    Lieber wäre es mir gewesen ich hätte den Fehler gefunden / verstanden.
    Aber was solls, hauptsache es funktioniert jetzt.


    Danke für deine Hilfe :)

    Hey
    also warum ein Offset.
    Ohne Offset fängt er so an wie links, mit Offset so wie rechts. Die Zahlen und der Text und der Schwarze Bereich mit Rahmen rundrum gehören zum Hintergrund (so sieht die Hardware auch in echt aus und ich simuliere damit die Hardware)
    Ich kann auch z.B. nicht den max ProgressCount ändern sonst würde die Anzahl der LED's nicht mehr richtig dargestellt werden.

    Ich hab es jetzt hingekriegt, dass die LED's wieder in der Mitte sind.
    Komsicher Weise kann ich den Thumb Offset einstellen, aber kaum hab ich die Seekbar berührt springt er so als ob es nie einen Offset gegeben hat. Bei der Default seekbar funktioniert das allerdings ohne Probleme.
    Daran knabbere ich nun schon einige Stunden.
    Vielleicht hast du ja einen anderen Tip. Ich könnte natürlich den Hintergrund ändern und z.B. die Texte näher zusammen rücken, aber dann wird es recht unleserlich auf dem Tablet.
    Der Hintergrund sieht z.B. original (mit gimp erstellt)

    Das Problem mit dem Versatz habe ich nun so gelöst.
    width und height auf wrap content und dafür max min Heigtht und Width auf den wert den ich haben möchte.
    Hoffentlich gibt das nicht später andere Problem > verschiedene Tablets usw.

    Also ich hab ein Realtiv Layout in meinem Constraint Layout erzeugt. Darin habe ich eine Seekbar verschoben.
    Das ändert gar nichts. Ich werde jetzt noch ein paar andere Versuche starten.
    Wie erzeugst du eigentlich eine custom seekbar ? Also eigener Hintergrund mit eigenem Thumb (thumb ist hoffentlich der richtige ausdruck für den "Kreis" den man von links nach rechts schieben kann)

    also der Style ist es nicht > hab ich ausprobiert
    Den Thumb Offset brauche ich, da der beginn sonst nicht mit dem Background zusammen stimmt. Der Background enthält nämlich einen Rahmen und Zahlen. Sieht man weiter oben.
    Ausserdem ist der Thumb Offset in der Horizontalen(links nach rechts). Mein Problem ist der vertikale Versatz.
    Das mit dem Relativen Layout muss ich erst ausprobieren

    Also ich hab noch was gefunden.
    Es liegt scheinbar an der Layout Height.
    Wenn ich diese auf 0 Stelle dann ist alles im Centrum.
    Ich muss aber die Layout höhe verstellen, ansonsten stimmt der Background nicht.
    API23 (6.0) ist das scheinbar egal aber API22 (5.1) aber nicht.
    Muss ich das anders lösen ? Wenn ja wie ?

    Also ich hab jetzt genau das Selbe Virtual Device aufgebaut wie die Hardware (API22)
    Nun ist der Versatz auch auf dem Virtual Device zu sehen.


    Jetzt hab ich gleich 2 Probleme
    1) warum hab ich den Versatz ( ich hab auch nochmal eine Default seekbar platziert - gleicher Fehler)
    2) Wie kann man denn nun so was umgehen ??
    Ich kann doch nicht "tausend" verschiedene Geräte mit unterschiedlichen API ( Android Versionen) testen.
    Dann kommen auch noch die verschiedenen Auflösungen dazu hdpi hdpix ...
    Das wird ja Lustig.


    Kannst du mir da einen Tip dazu geben.
    Gruß

    Etwas ist mir aber gerade aufgefallen.
    Weis nicht ob das ein Problem sein könnte und wenn ja,wie ich das programmtechnisch lösen könnte.
    Das Virtuel Device und die Hardware haben unterschiedliche Versionen.
    Zur Info:Galaxy Note 10.1 2014 und SM-P605 ist aber das gleiche

    Hier mal der Code (wie gesagt der Versatz ist bei beiden)
    einer von der "default Seekbar"
    Es sieht auch so aus, dass es nur von allen Seekbars einen Versatz gibt. Der Rest scheint OK zu sein.


    und hier die custom seekbar

    Danke wie immer für deine Antworten


    Also ich hab es jetzt hinbekommen.
    Ich überprüfe ganz am Anfang ob eine Datenbank vorhanden ist. Wenn nicht kopiere ich die Datenbank im Assets Folder an die Richtige stelle.
    Danach schliesse ich den Stream. Hoffe das dies so reicht und mein Programm startet.

    Danke für deine Info. Hab gerade etwas wenig Zeit.(bin auch nicht zuhause) Werde die Layout Datei so bald es geht zu Verfügung stellen.
    Mit den Support libs müsste ich eigentlich auf dem neuesten Stand sein. Zumindest bin ich mit den Updates auf dem neuesten Stand.

    Hey
    also das Virtual Device und die Hardware haben die gleiche Auflösung.
    Das kann es doch aber eigentlich gar nicht sein. Ich kann mir gerade nicht vorstellen was nur ein vertikaler Versatz mit der Auflösung zu tun hat. Das Problem ist ja ausserdem bei dem zusätzlichen default Seekbar auch zu sehen.
    Hattest du das Problem auch schon mal?
    Gruß

    Hey, ich bins nochmal.


    Ich hab noch ein kleines grafisches Problem und weis nicht wo ich da suchen soll.
    Ich habe 4 Customer Seekbars (jeweils ein Hintergrund und dazu sozusagen "LED's " welche ich verschieben kann.
    z.B.

    LED =


    Ebenso ist noch eine default Seekbar mit dabei.
    Wenn ich die App z.B mit einem Virtual Device (Samsung Galaxy 10.1 2014) simuliere stimmt alles perfekt.

    Wenn ich allerdings die richtige Hardware anschließe und darauf die App laufen lasse habe ich immer einen Versatz der LED zum Hintergrund.
    Die LED ist aber in der Grafik Zentral und nicht mit einem Versatz im Hintergrund platziert.
    Sogar bei der default Seekbar ist ein Versatz ??
    Hier ein Bild dazu.


    Was ist da der Grund ?
    Wenn ich immer, egal ob Virtual oder richtige Hardware den Versatz hätte würde ich es ja verstehen, aber so ??
    Gruß