Android 使用DB时,sendUserActionEvent()mViwe==null错误
我是S4用户和我的安卓版本。是184.3.3 嗯……当我制作一个应用程序时,我遇到了一些问题sendUserActionEvent mViwe==null,所以我需要别人的帮助。请帮助我: 这是发生错误的代码Android 使用DB时,sendUserActionEvent()mViwe==null错误,android,database,logcat,Android,Database,Logcat,我是S4用户和我的安卓版本。是184.3.3 嗯……当我制作一个应用程序时,我遇到了一些问题sendUserActionEvent mViwe==null,所以我需要别人的帮助。请帮助我: 这是发生错误的代码 ... try{ body = m_et_inc_bdy.toString(); mny = Integer.parseInt(m_et_inc_mn
...
try{
body = m_et_inc_bdy.toString();
mny = Integer.parseInt(m_et_inc_mny.toString());
ord = yr*10000+mth*100+day;
m_dao.Append(body, mny, yr, mth, day, ord);
Toast.makeText(this, "REG success.", Toast.LENGTH_SHORT).show();
finish();
}catch(Exception ig)
{
Toast.makeText(this, "pre_DB_Error", Toast.LENGTH_LONG).show();
ig.printStackTrace();
finish();
}
...
m_dao.Append方法就是这段代码
public void Append(String body, int mny, int yr, int mth, int day, int ord ) throws Exception{
str_query="'"+body+"',"+mny+","+yr+","+mth+","+day+","+ord;
_db_.execSQL("insert into HAC (body, money, dateyear, datemonth, dateday, ord) values("+str_query+") ");
}
我想我的代码中没有错误,但它不起作用..带有logcat的错误msg sendUserActionEvent mViwe==null
有人能帮我吗??请:
/*这就是全部代码*/
package com.example.accountbook;
import java.util.*;
import android.app.*;
import android.app.DatePickerDialog.OnDateSetListener;
import android.os.*;
import android.view.*;
import android.widget.*;
import com.example.accountbook.db.*;
public class InpIncActivity extends Activity implements View.OnClickListener{
private RankDAO m_dao = null;
private Button m_btn_date = null;
private Button m_btn_input = null;
private Button m_btn_cancel = null;
private EditText m_et_inc_bdy = null;
private EditText m_et_inc_mny = null;
private DatePickerDialog dlg = null;
private OnDateSetListener listener = null;
private int yr = 0;
private int mth = 0;
private int day = 0;
private int mny = 0;
private int ord = 0;
String body;
String date = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_in_inc);
setBindingButtons();
setBindingText();
setBingingDialog();
setBindingRank();
}
private void setBindingButtons()
{
m_btn_date=(Button)findViewById(R.id.btn_ia_date);
m_btn_input=(Button)findViewById(R.id.btn_ia_input);
m_btn_cancel=(Button)findViewById(R.id.btn_ia_cancel);
m_btn_date.setOnClickListener(this);
m_btn_input.setOnClickListener(this);
m_btn_cancel.setOnClickListener(this);
}
private void setBindingText()
{
m_et_inc_bdy=(EditText)findViewById(R.id.et_ia_bd);
m_et_inc_mny=(EditText)findViewById(R.id.et_ia_mny);
}
public void onClick(View v)
{
if(v==m_btn_date)
{
dlg.show();
}
else if(v==m_btn_input)
{
try{
body=m_et_inc_bdy.toString();
mny=Integer.parseInt(m_et_inc_mny.toString());
ord=yr*10000+mth*100+day;
m_dao.Append(body, mny, yr, mth, day, ord);
Toast.makeText(this, "REG success", Toast.LENGTH_SHORT).show();
finish();
}catch(Exception ig)
{
Toast.makeText(this, "pre_DB_Error", Toast.LENGTH_LONG).show();
ig.printStackTrace();
finish();
}
}
else if(v==m_btn_cancel)
{
finish();
}
}
public void setBingingDialog()
{
this.listener = new OnDateSetListener()
{
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
yr=year;
mth=monthOfYear+1;
day=dayOfMonth;
if(mth<10)
date=String.valueOf(yr)+".0"+String.valueOf(mth)+"."+String.valueOf(day);
else
date=String.valueOf(yr)+"."+String.valueOf(mth)+"."+String.valueOf(day);
m_btn_date.setText(date);
}
};
this.dlg=new DatePickerDialog(this, listener,Calendar.getInstance().get(Calendar.YEAR), Calendar.getInstance().get(Calendar.MONTH), Calendar.getInstance().get(Calendar.DATE));
}
public void setBindingRank()
{
try{
m_dao=RankDAO.GetInstance(this);
}catch(Exception e){
Toast.makeText(this, "DB ERROR", Toast.LENGTH_LONG).show();
e.printStackTrace();
}
}
}
////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////
package com.example.accountbook.db;
import java.util.*;
import com.example.accountbook.*;
import android.app.*;
import android.database.*;
import android.database.sqlite.*;
public class RankDAO {
private static RankDAO _instance_ = null;
private static Activity _activity_ = null;
private SQLiteDatabase _db_ = null;
private int year = 0;
private int month = 0;
private int day = 0;
private int money = 0;
String body = null;
String val = null;
String str_query = null;
private RankDAO() throws Exception{
super();
OpenDatabase();
}
public static synchronized RankDAO GetInstance(Activity act) throws Exception{
if(_instance_ == null) {
_activity_ = act;
_instance_ = new RankDAO();
}
return _instance_;
}
private void OpenDatabase() throws Exception {
try{
if(_db_ == null){
_db_ = _activity_.openOrCreateDatabase("db", Activity.MODE_PRIVATE, null);
//_db_.execSQL("drop table HAC");
_db_.execSQL("Create Table IF NOT EXISTS HAC (body varchar(127), money int(8), dateyear int(4), datemonth int(2), dateday int(2), ord int(8) )");
// _db_AC.execSQL("Create Index IF NOT EXISTS IDX_HAC ON HAC (dateyear asc, datemonth asc, dateday asc)");
}
}catch(Exception ig){
ig.printStackTrace();
throw ig;
}
}
public void Append(String body, int mny, int yr, int mth, int day, int ord ) throws Exception{
str_query="'"+body+"',"+mny+","+yr+","+mth+","+day+","+ord;
_db_.execSQL("insert into HAC (body, money, dateyear, datemonth, dateday, ord) values("+str_query+") ");
}
public ArrayList<HashMap<String,String >> GetRankData(){
ArrayList<HashMap<String,String>> _Items = new ArrayList<HashMap<String,String>>();
Cursor _cursor = _db_.rawQuery("Select * From HAC Order By ord desc ", null);
if(_cursor.moveToFirst()){
do{
body = _cursor.getString(0);
money = Integer.parseInt(_cursor.getString(1));
year = Integer.parseInt(_cursor.getString(2));
month = Integer.parseInt(_cursor.getString(3));
day = Integer.parseInt(_cursor.getString(4));
val =String.valueOf(year)+"."+String.valueOf(month)+"."+String.valueOf(day)+"\t"+String.valueOf(money);
HashMap<String,String> _Item = new HashMap<String,String>();
_Item.put("value",val); // No. 이름
_Item.put("body", body); // 시간
_Items.add(_Item);
MainActivity.mymoney(money);
if(year==Calendar.getInstance().get(Calendar.YEAR) && month==Calendar.getInstance().get(Calendar.MONTH) && day==Calendar.getInstance().get(Calendar.DATE))
MainActivity.todinc(money);
}while(_cursor.moveToNext());
_cursor.close();
}
return _Items;
}
}