-1

DBUser.java であるデータベース クラスの列番号から取得した値を渡し、それを別のクラスの変数に割り当てる方法を知りたいですか? . DBUser.java でこのメソッドを試しました。

public String getNumber() throws SQLException  
{  
    String number;
    Cursor mCursor = db.query(DATABASE_TABLE, new String[] {KEY_NUMBER}, null, null, null, null, null);

    number = mCursor.getString(mCursor.getColumnIndex(KEY_NUMBER)); // KEY_NUMBER ="numbers"
    mCursor.close();

    return number; // I think I'm missing something here???? IDK
}

これは、列番号の値を渡したいメインクラスのメソッドです。

public void onACU (View view) {
    String messageToSend = "ACU ON";

    DBUser dbUser = new DBUser(AleccMainActivity.this);  
    dbUser.open();  // I opened the DB
    // recipient is a global variable.
    recipient = dbUser.getNumber();//then I assigned the method in my string var thinking that the value will be passed to it.
    dbUser.close(); // then i close the DB

    SmsManager.getDefault().sendTextMessage(recipient, null, messageToSend, null,null);
}

私の本能は、私の db.query と return ステートメントが正しくないように見えるので、それを機能させる方法を教えてください。私はJavaが初めてです。ありがとう!

4

1 に答える 1

0

カーソルが 1 行しかない場合でも、moveToFirst() または moveToNext() を呼び出す必要があります。

于 2013-02-02T19:00:47.040 に答える