2017-09-08 9 views
-1

私はデータベースで "id"を見つけなければなりません。この方法で試してみましたが、解決できません。私たちを手伝ってくれますか。どうもありがとう。任意のアイテムでsqliteからidを検索

listview.setOnItemClickListener(new AdapterView.XouOnItemClickListener() { 

     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
           long arg3) { 

      String text = (String) listview.getItemAtPosition(arg2); 


      Database db = new Database(getApplicationContext()); 
      String query = "SELECT name, id FROM tableDB WHERE name = '" + text + "'"; // I think problem is here 
      Cursor cursor = db.rawQuery(query, null); 
      cursor.moveToFirst(); 

      id_position = cursor.getInt(cursor.getColumnIndex("id")); 

      go_detail(); 
     } 
    }); 

//この部分は、私はエラーがgo_detail機能であると思い

private void go_detail(){ 
      Intent intent = new Intent(getApplicationContext(), Detail_page.class); 
      intent.putExtra("id", (int) name_ids[id_position]); 
      startActivity(intent); 
} 

答えて

0

OKです。今すぐgo_detail(int id_position){....}のようなパラメータを追加してみてください。パラメータなしでidを取得できません。

+0

いいえいいえ、私はすべての行を1つずつ試しました。そして確かに問題はこの行です 文字列クエリ= "SELECT def、id FROM tuncDB WHERE def = '" + second + "'"; –

+0

あなたの 'go_detail'関数で' id_position'の値をどのように取得すると思いますか? –

関連する問題