【发布时间】:2014-03-30 22:56:21
【问题描述】:
我有一个计数器来计算我点击按钮的次数。
public void onClick(View v) {
counter++;
text.setText("Score"+counter);
}
然后我将这个值插入到我的数据库中
text = (TextView) findViewById(R.id.textView1);
final String Score = text.getText().toString();
mySQLiteAdapter.openToWrite();
mySQLiteAdapter.insert("sccore="Score);
mySQLiteAdapter.close();
这是我的插入函数
public long insert(String content){
ContentValues contentValues = new ContentValues();
contentValues.put(KEY_CONTENT, content);
return sqLiteDatabase.insert(MYDATABASE_TABLE, null, contentValues);
}
所以插入的计数器值是-> Score = 2 ,Score = 1 ,Score = 111, Score = 3, Score = 21
然后我想在另一个 texview 中看到这个分数:
mySQLiteAdapter = new SQLiteAdapter(this);
/*
* Open the same SQLite database
* and read all it's content.
*/
mySQLiteAdapter = new SQLiteAdapter(this);
mySQLiteAdapter.openToRead();
String contentRead = mySQLiteAdapter.queueAll();
listContent.setText(contentRead);
mySQLiteAdapter.close();
我的函数 queueAll() 看起来像:
public String queueAll(){
String[] columns = new String[]{KEY_CONTENT};
Cursor cursor = sqLiteDatabase.query(MYDATABASE_TABLE, columns,
null, null, null, null, KEY_CONTENT+" desc");
String result = "";
int index_CONTENT = cursor.getColumnIndex(KEY_CONTENT);
for(cursor.moveToFirst(); !(cursor.isAfterLast()); cursor.moveToNext()){
result = result + cursor.getString(index_CONTENT) + "\n";
}
return result;
}
好的,在文本视图中我看到了这个:
Score = 3 , Score=21 , Score=2 , Score=111, Score=1
但我想要
score=111, score=21, score=3, score=2, score=1.
为什么按 DESC 排序没有像我在 DESC 中想要的那样排序?为什么会这样想?为什么我插入的计数器值未按 DESC 排序?
public static final String MYDATABASE_NAME = "MY_DATABASE";
public static final String MYDATABASE_TABLE = "MY_TABLE";
public static final int MYDATABASE_VERSION = 1;
public static final String KEY_CONTENT = "Content";
//create table MY_DATABASE (ID integer primary key, Content text not null);
private static final String SCRIPT_CREATE_DATABASE =
"create table " + MYDATABASE_TABLE + " ("
+ KEY_CONTENT + " text not null);";
说实话,我的列 KEY_CONTENT 应该是 NUMBER 而不是 STRING。如何改变这个? 当我将 str 更改为 num 时,将按我想要的方式按 DESC 排序?
【问题讨论】:
-
感谢您精心准备的问题。
标签: android database sqlite sorting textview