안드로이드 게임을 구현하고 있는데(대충 드래곤 플라이 같은)
게임 화면 상단에는 점수를 나타내고 있어요.
여기에다가 최고점수를 따로 나타내려고 하는데
sqllite를 이용해서 값을 저장하는데 까지는 된거 같은데
그 값을 읽어와서 게임 화면에 뿌려주는 방법을 모르겠습니다..
값을 저장하는데 까지라도 맞는지 좀 확인해주시고
데이터 값 가져와서 뿌려주는 방법좀 알려주시면 정말 감사드리겠습니다..책보고 구글링해도
도저히 모르겠어요..몇일 째..
-------------------------------------------------------------------------------------
게임 상태를 나타내는 GameState.java 안에 Sqlite 클래스를 만들어서 db저장을 하고 있어요.
score가 점수. 터치를 하게되면 score 값이 들어가게 했는데 이 방법이 옳은건진 모르겠네요 ;
-------------------------------------------------------------------------------------
public class Sqlite extends View {
DBHelper m_Helper;
public Sqlite(Context context) {
super(context);
m_Helper = new DBHelper(context, "rank.db", null, 1);
}
public boolean onTouchEvent(MotionEvent event) {
SQLiteDatabase db = m_Helper.getWritableDatabase();
ContentValues row = new ContentValues();
Random rand = new Random();
row.put("score", rand.nextInt(100));
db.insert("RankBoard", null, row);
db.close();
invalidate();
return super.onTouchEvent(event);
}
}
-------------------------------------------------------------------------------------
DBHelper.java
-------------------------------------------------------------------------------------
package org.Game;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class DBHelper extends SQLiteOpenHelper{
public DBHelper(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);
// TODO Auto-generated constructor stub
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE RankBoard(score INTEGER);");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
}
}
-------------------------------------------------------------------------------------
어떻게 해야할까요 ㅜㅜㅜㅜㅜㅜㅜ