Beiträge von nono124

    Hi
    ein Tip benutze zum erstellen der Tabelle auch deine Konstanten dann kann so etwas nicht passieren.


    Das hast du hier auch schon angefangen.


    // String createTable = "CREATE TABLE " + TABLE_NAME + "(" + COL1 + " INTEGER PRIMARY KEY AUTOINCREMENT," + COL2 + " TEXT," + COL3 + " TEXT," + COL4 + " TEXT" + ")"; // ein anderer Weg für die String definition

    Deine Konstanten


    public static final String COL20 = "TRAJECTORYTABLE1"; //Seekbar
    public static final String COL21 = "SIDESPINTABLE1"; //Seekbar
    public static final String COL22 = "SPEEDTABLE1"; //Seekbar
    public static final String COL23 = "BACKSPINTOPTABLE1"; //Seekbar
    public static final String COL24 = "TRAJECTORYTABLE2"; //Seekbar
    public static final String COL25 = "SIDESPINTABLE2"; //Seekbar
    public static final String COL26 = "SPEEDTABLE2"; //Seekbar
    public static final String COL27 = "BACKSPINTOPTABLE2"; //Seekbar
    public static final String COL28 = "TRAJECTORYTABLE3"; //Seekbar
    public static final String COL29 = "SIDESPINTABLE3"; //Seekbar
    public static final String COL30 = "SPEEDTABLE3"; //Seekbar
    public static final String COL31 = "BACKSPINTOPTABLE3"; //Seekbar
    public static final String COL32 = "TRAJECTORYTABLE4"; //Seekbar
    public static final String COL33 = "SIDESPINTABLE4"; //Seekbar
    public static final String COL34 = "SPEEDTABLE4"; //Seekbar
    public static final String COL35 = "BACKSPINTOPTABLE4"; //Seekbar
    public static final String COL36 = "TRAJECTORYTABLE5"; //Seekbar
    public static final String COL37 = "SIDESPINTABLE5"; //Seekbar
    public static final String COL38 = "SPEEDTABLE5"; //Seekbar
    public static final String COL39 = "BACKSPINTOPTABLE5"; //Seekbar
    public static final String COL40 = "TRAJECTORYTABLE6"; //Seekbar
    public static final String COL41 = "SIDESPINTABLE6"; //Seekbar
    public static final String COL42 = "SPEEDTABLE6"; //Seekbar
    public static final String COL43 = "BACKSPINTOPTABLE6"; //Seekbar
    public static final String COL44 = "SHOTHEIGHT"; //Spinnner


    deine Tabelle



    sb.append("TRAJECTORY1 INTEGER, SIDESPIN1 INTEGER, SPEED1 INTEGER, BACKSPINTOP1 INTEGER, TRAJECTORY2 INTEGER, SIDESPIN2 INTEGER, SPEED2 INTEGER, BACKSPINTOP2 INTEGER, ");
    sb.append("TRAJECTORY3 INTEGER, SIDESPIN3 INTEGER, SPEED3 INTEGER, BACKSPINTOP3 INTEGER, TRAJECTORY4 INTEGER, SIDESPIN4 INTEGER, SPEED4 INTEGER, BACKSPINTOP4 INTEGER, ");
    sb.append("TRAJECTORY5 INTEGER, SIDESPIN5 INTEGER, SPEED5 INTEGER, BACKSPINTOP5 INTEGER, TRAJECTORY6 INTEGER, SIDESPIN6 INTEGER, SPEED6 INTEGER, BACKSPINTOP6 INTEGER, ");
    sb.append("SHOTHEIGHT INTEGER )");



    bei den Konstanten COL20 = "TRAJECTORYTABLE1" und in der Tabelle "TRAJECTORY1
    das ist kein wunder bei put mus der gleiche name wie die in der tabelle stehen.

    Solltest du bei einer bestehenden APP änderungen an der Sql machen dann must du dafür Methoden Schreiben und diese ausführen. Dafür giebt es die public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) Methode in der du alle änderungen machst wenn es eine Datenbankänderung imzuge eines APP updates gib. Für so etwas benutz man dan immer einige Sql anweisungen .

    Du Speicherst allso alle deine Mischpul-Regler in einer Tabelle und in einen Datensatz ab.
    Wie gesagt für die einzelnen Regler Spinner würde ich eine eigene Tabelle machen mit (SpinnerText ,ID) und in Regler Tabelle nur die ID speichern.

    Hi
    das wird leider immer etwas auf den Verschiedenen Geräten aussehen.
    Welches Layout benutz du? Ich Benutze meistens das Relativ Layout damit kannst du es noch am besten Steuern oder das neue ConstraintLayout da kanst du deine Views auch Relativ setzen. Ansonsten immer nur dp und keine Picsel werte verwenden.


    Dadurch das die Handy verschiedene Display Grössen und Dichten haben giebt es immer ein paar Unterschiede.