您好新来使用android的SQLite工作,我一直在寻找一种方式来使用SQLite数据库存储长,而我正在处理用户对象的CRUD操作。 我insertDetails方法是在这里:从长长的对象
public Long insertDetails(String fname, String lname,String sex,String birthdate) {
ContentValues contentValues = new ContentValues();
contentValues.put(UserOpenHelper.FNAME, fname);
contentValues.put(UserOpenHelper.LNAME, lname);
contentValues.put(UserOpenHelper.SEX, sex);
contentValues.put(UserOpenHelper.BIRTHDATE, birthdate);
opnToWrite();
long val = database_ob.insert(UserOpenHelper.TABLE_NAME, null,
contentValues);
Close();
return val;
}
和我得到的错误在UserActivity,
List<User> values = datasource.getAllUsers();
ArrayAdapter<User> adapter = new ArrayAdapter<User>(this,
android.R.layout.simple_list_item_1, values);
setListAdapter(adapter);
User User= datasource.insertDetails(firstname, lastname, sex, birthdate);//here (1)
adapter.add(User);
long val = adapter.insertDetails(firstname, lastname, sex, birthdate); //here (2)
//long vall= adapter.insert(User, index)
// db.addUser(new User(firstname, lastname, sex, birthdate));
Log.d("filter", "inserted");
错误:
(1)型不匹配:不能从长转换为用户
(2) - 方法insertDetails(String,String,String,String)未定义为类型ArrayAdapter
任何帮助,请
这两个错误都是编译时错误,这意味着你不知道java的基本知识...... 1)datasource.insertDetails返回Long ...即使你将它转换为User'User User =(用户)datasource.insertDetails(...)''你将得到运行时异常(ClassCastException)... 2)'方法insertDetails(字符串,字符串,字符串,字符串)是未定义的类型ArrayAdapter'意味着(鼓!!!)的方法insertDetails(字符串,字符串,字符串,字符串)是未定义的类型ArrayAdapter(ArrayAdapter没有这样的方法)...所以请在提问 – Selvin 2014-09-04 13:22:49
问题之前学习一些Java基础知识,但没有帮助,是java和android的新手,这就是我在这里做的,找到我的问题的答案。大家都开始在同一点 – user3476925 2014-09-04 13:30:09