源码: Button login_Button = (Button)this.findViewById(R.id.login_Button);
login_Button.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){ //店家登陆按钮
final String name_str = name_Edittext.getText().toString();
final String password_str =password_Edittext.getText().toString();
SQLiteDatabase db =all_database.login.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from log_in where name= ? and password=?",
new String[]{name_str,password_str });
if(cursor.getCount() != 0){
createAlertDialog();
} }
});
其中login是全局变量。在all_database中定义:public class all_database {
public static login_Databasehelper login;
}
我输入的是数据库中已有的name和password,其中第三条出错信息是指的new String[]{name_str,password_str }
出错信息:
12-07 14:22:35.244: E/AndroidRuntime(222): Uncaught handler: thread main exiting due to uncaught exception
12-07 14:22:35.284: E/AndroidRuntime(222): java.lang.NullPointerException
12-07 14:22:35.284: E/AndroidRuntime(222): at com.androidbook.Luncher_windowActivity$2.onClick(Luncher_windowActivity.java:38)
12-07 14:22:35.284: E/AndroidRuntime(222): at android.view.View.performClick(View.java:2364)
请问java.lang.NullPointerException是哪来的?
哪里有问题,该怎么改?
login_Button.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v){ //店家登陆按钮
final String name_str = name_Edittext.getText().toString();
final String password_str =password_Edittext.getText().toString();
SQLiteDatabase db =all_database.login.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from log_in where name= ? and password=?",
new String[]{name_str,password_str });
if(cursor.getCount() != 0){
createAlertDialog();
} }
});
其中login是全局变量。在all_database中定义:public class all_database {
public static login_Databasehelper login;
}
我输入的是数据库中已有的name和password,其中第三条出错信息是指的new String[]{name_str,password_str }
出错信息:
12-07 14:22:35.244: E/AndroidRuntime(222): Uncaught handler: thread main exiting due to uncaught exception
12-07 14:22:35.284: E/AndroidRuntime(222): java.lang.NullPointerException
12-07 14:22:35.284: E/AndroidRuntime(222): at com.androidbook.Luncher_windowActivity$2.onClick(Luncher_windowActivity.java:38)
12-07 14:22:35.284: E/AndroidRuntime(222): at android.view.View.performClick(View.java:2364)
请问java.lang.NullPointerException是哪来的?
哪里有问题,该怎么改?
这样代码不好找错误,毕竟你那么多代码。这只是一小部分。你看看我的研究吧,这个代码不一定是这里的错误。public Cursor query(String sql, String[] args){
SQLiteDatabase db = this.getReadableDatabase();
return db.rawQuery(sql, args);
}Cursor cursor = db.query("select _id from routine_detail where rest_id = ?", new String[]{id+""});
if (cursor.moveToNext()) {
itemId = cursor.getInt(cursor.getColumnIndex("_id"));
ifLoad = true;
}
cursor.close();
public boolean updateThumb(int id,String thumb){
ContentValues values=new ContentValues();
values.put(THUMB_PATH,thumb);
return mdb.update(TABLE_NAME, values, KEY+"="+id, null)>0;
} public boolean updatePathAndOcr(int id,String imagePath,String OcrResult){
ContentValues values=new ContentValues();
values.put(IMG_PATH, imagePath);
values.put(RECOG, OcrResult);
return mdb.update(TABLE_NAME, values, KEY+"="+id, null)>0;
}上面我的是通过SQLiteDatabase进行操作的,你上面的错误是空指针异常,而且是在类的38行,请给出这行的代码
改为:login_Button.setOnClickListener(new android.view.View.OnClickListener(){