@Da MusH: Tack för länken men det är just den tutorialen som jag fightas med just nu.
@NoToes: Ja, det är nog activity jag menar (Har inte full koll på vokabulären än)
SharedPreferences kanske funkar nu men i slutändan kommer det bli rätt komplext och då tror jag en databas är bästa lösningen. Realm såg intressant ut, tack. Får studera det lite närmre. Molnbaserat får bli en framtida lösning
Har även hittat denna tutorial som jag testar nu:http://mobilesiri.com/android-sqlite-database-tutorial-using-android-studio/
Men det är inte helt lätt att få det att köra
Just nu ser mina klasser ut såhär:
MainActivity.java:
package se.anna.thepile;
import android.content.ContentValues;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
public final static String EXTRA_MESSAGE = "se.anna.thepile";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
/**
* Called when the user clicks the Add Task button
*/
public void addTask(View view) {
EditText editText = (EditText) findViewById(R.id.task_description);
String myTask = editText.getText().toString();
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_NAME, myTask); // Task Name
// Inserting Row
db.insert(TABLE_NAME, null, values);
db.close(); // Closing database connection
}
}
DBHandler.java:
package se.anna.thepile;
import android.app.ActivityManager;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class DBHandler extends SQLiteOpenHelper {
// Database Version
private static final int DATABASE_VERSION = 1;
// Database Name
private static final String DATABASE_NAME = "thepile";
// Contacts table name
private static final String TABLE_NAME = "tasks";
// Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_NAME = "aTask";
public DBHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_NAME + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT," + ")";
db.execSQL(CREATE_CONTACTS_TABLE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
// Creating tables again
onCreate(db);
}
}
Nuvarande felmeddelande: Error:(28, 37) error: cannot find symbol method getWritableDatabase()
Några tips?
/Anna