私はログイン画面でユーザーが最初に表示される単純なログインアプリケーションに取り組んでいます。ユーザーにusrnameとパスワードを入力させるための2つのedittextがあります。ユーザーが登録ボタンを押すと、アプリケーションはユーザーを登録ページに移動させ、ユーザーが入力した4つのフィールド(uname、pwd、Email Add、Postal Add)の登録詳細をデータベースに挿入する必要があります。私の登録クラスで登録クラスのコンテキストオブジェクトによって呼び出されるOpenOrCreateDatabase(****)でnullポインタ例外を除去する方法はありますか?
私は、コンストラクタは、コンテキストオブジェクトはmcontext
という名前の別のオブジェクトにコピーされると呼ばれているとして、その後DatabaseOperation
のコンストラクタが呼び出され、登録クラスのコンテキストを渡すことで、私のDatabaseOperation
クラスのオブジェクトを作成しました。テーブルを作成するCreate_tbl
という名前のこのメソッドの後に、呼び出しが行われます。この方法では
私は私の質問がある.......
public void Create_Tbl()
{
db = mcontext.openOrCreateDatabase("Register.db", SQLiteDatabase.CREATE_IF_NECESSARY,null);
CREATE_TABLE_REGISTER = "CREATE TABLE IF NOT EXISTS "+table_name+"(u_id INTEGER PRIMARY KEY AUTOINCREMENT,u_name TEXT,u_eadd TEXT,u_pwd TEXT,u_padd TEXT)";
db.execSQL(CREATE_TABLE_REGISTER);
}
としてmcontext
オブジェクトにOpenOrCreateDatabase()
メソッドを呼び出し:なぜ私はopenOrCreateDatabase()
でNullPointerException
を取得しています。また
は、私は2つの他の場所
Create_Tbl();
DatabaseOperation dos = new DatabaseOperation(Registration.this);
どのようにmContextを設定しますか? – ariefbayu
DatabaseOperation dos =新しいDatabaseOperation(登録)。 – JAaVA
設定コンテキストpublic DatabaseOperation(コンテキストコンテキスト){ \t \t // TODO自動生成コンストラクタスタブ \t \t mcontext = context; \t \t Create_Tbl(); } – JAaVA