我试图创建一个密码管理器的列表视图,将填充与数据库中的项目,当有人点击它会返回primaryid ....我看到一个列表视图列表项其他的例子,但不能把它做corectly ....这是我迄今所做的....我能够填充列表查看,但无法处理的点击事件:(获取主ID上点击Android的
ArrayList<String> listItems=new ArrayList<String>();
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_single_choice , listItems);
SQLiteDatabase DB= null;
final String TableName = "XIBEAT_PASSWORDS";
String DBname="Xibeat_Crypto_Knight_Vault";
try {
DB = this.openOrCreateDatabase(DBname, MODE_PRIVATE, null);
DB.execSQL("CREATE TABLE IF NOT EXISTS " + TableName + " ('_id' INTEGER PRIMARY KEY AUTOINCREMENT,HOST TEXT, URL TEXT, PASSWORD TEXT, NOTES TEXT, TAG TEXT, TIME TEXT, DATE TEXT, EXPIRE TEXT, EDITED TEXT, STRENGTH TEXT, REASON TEXT);");
Cursor c = DB.rawQuery("SELECT * FROM " + TableName , null);
int host= c.getColumnIndex("HOST");
String title="";
c.moveToFirst();
if(c!=null)
{
while (c.moveToNext()){
title = c.getString(host);
//Toast(title);
listItems.add(title);
}
}
final ListView passList=(ListView)findViewById(R.id.passlist);
passList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listItems));
//===============ONCLICK LISTENER+=========
passList.setOnItemClickListener(new OnItemClickListener()
{public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
}});
} finally {
if (DB != null)
DB.close();
}
}
感谢很多人....我欠你的:) 完成了一半的方式...我能在我的SQLite数据库中获取位置:) Quick QUestion ...因为我的_id是一个自动增量,它会返回相同的_id,例如: 例如,如果有三个项目,并且我从数据库中删除第二行...则我选择行中的最后一个元素....我会将ID作为3或2 – Prasun
自动增量列不会重复删除_ids,所以你将继续得到3的C(如果你插入D,它会得到_id 4等)。 – ianhanniballake
感谢...你使我不再怀疑:) – Prasun