我需要在我的應用程序中顯示異常作爲吐司消息,但下面的代碼不工作,我該如何修改?在android中的異常處理
public void onClick(View v) {
try {
if (btn66 == v) {
ContentValues value = new ContentValues();
value.put(DBhelper.Amount, txtBudget.getText().toString());
value.put(DBhelper.Description, txr.getText().toString());
if (txtBudget.length() == 0) {
txtBudget.requestFocus();
txtBudget.setError("Field Cannot Be Empty");
} else {
db = helper.getWritableDatabase();
db.insert(DBhelper.TABLE2, null, value);
db.close();
clearfield();
Toast.makeText(this, "Budget add Successfully", Toast.LENGTH_LONG).show();
fetchData2();
}
}
}
catch (Exception sce)
{
Toast.makeText(this, "Error duplicate", Toast.LENGTH_LONG).show();
System.out.println(sce.getMessage());
}
}
10-14 23:41:21.637 14498-14498/com.example.username.weddingplanning E/SQLiteDatabase:錯誤插入名= d android.database.sqlite.SQLiteConstraintException:列名稱是不是唯一的(代碼19) 在android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(母語 方法) 在android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:968) 在android.database.sqlite.SQLiteSession。 executeForLastInsertedRowId(SQLiteSession.java:788) at andro在android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:SQLiteDatabase.java)中使用的ID.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86) (位於android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1575) : 1445) at com.example.username.weddingplanning.addcategory.onClick(addcategory.java:67) at android.view.View.performClick(View.java:4439) at android.view.View $ PerformClick.run( View.java:18398) at android.os.Handler.handleCallback(Handler.java:725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper。 java:176) at android.app.ActivityThread.main(ActivityThread.java:5299) at java.lang方法.invokeNative(本地方法) at java.lang.reflect.Method.invoke(Method.java:511) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1102) 在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869) 在dalvik.system.NativeStart.main(本機方法)
你在做什麼? –
顯示得到的結果 –
我沒有在吐司中得到任何錯誤消息,但在logcat中,異常錯誤細節即將到來。 – xyz