android遇到的BUG,android遇到BUG
1BUG,(sqlite有關)
遇到: attempt to re-open an already-closed object: SQLiteDatabase: /data/data/com.example.biye/databases/ToDothing.db
嘗試重新開啟一個已經關閉的對象:sqlitedatabase......
解決:查看前面的方法裡有關閉資料庫的操作沒?如:db.close(); 將其注釋掉或刪除。
2.BUG,(EditText賦值有關)
遇到:EditText edit31.setText("就是不讓你賦值");
研究:報錯null 指標異常nullpointerexception;
id錯了沒?1. <EditText android:id="@+id/edit31" /> 2 . edit31 = (EditText) findViewById(R.id.edit31); 沒錯啊!!糾結
找出原因:edit31 = (EditText) findViewById(R.id.edit31); 位置在按鈕事件後面,執行btn事件時程式是沒有將UI介面上EditText賦值給edit31,所以edit31是null。
解決:edit31 = (EditText) findViewById(R.id.edit31); 位置調到setOnClickListener(); 上面去,bug解決。如:
3.BUG(sqlite有關)
遇到:unrecognized token。。。。一句sql語句 報錯地址: db.update("thing", cv, "thing_name=" + name, null); //name是傳過來的參數String類型
研究:sql語句有問題,name是字元類型,sql語句中應該加 '' 單引號
解決: 1. String[] str={name}; db.update("thing", cv, "thing_name=?", str);
2 db.update("thing", cv, "thing_name='"+name+"'", null);
4.BUG(sqlite有關)
遇到:NotFoundException: String resource ID #0x4
研究找出原因:Toast.makeText(context, reslut.length, 5000).show(); //reslut.length是int類型,Toast.makeText()裡面需要String類型
解決:就要將int轉化成String,或在該int值後面+"" 如:Toast.makeText(context, reslut.length+"", 5000).show();
持續積累中,如有錯誤請幫忙指出,好的建議請賜教,謝謝