0

ListViewにはデータベースのデータが表示されます。特定のListViewオプションをクリックすると、新しいアクティビティが開始され、そのアクティビティに、選択したオプションに関連するデータが表示されます。

新しいアクティビティを開くのに問題はありませんが、ListViewでどのオプションが選択されているかをそのアクティビティに知らせることができません。

ListViewのコード:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    database = new projectdatabase(ProjectExplorer.this);

    openDatabase();
}

private void openDatabase() {

    database.open();
    cursor = database.getDataforDisplay();
    adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, cursor, new String[] {"project_name"}, new int[] { android.R.id.text1 }, 0);
    setListAdapter(adapter);

}

@Override
public void onListItemClick(ListView parent, View view, int position, long id) {

    super.onListItemClick(parent, view, position, id);

            Intent intent = new intent(this, openactivity.class);
            startActivity(intent);


    //What else to add here?

}      

「project_name」を他のアクティビティに送信して、クエリを実行して他の情報を取得したいだけです。

4

1 に答える 1

2

project_name 次のようにリスト項目をクリックして取得:

@Override
public void onListItemClick(ListView parent, View view, int position, long id) {

    super.onListItemClick(parent, view, position, id);

      Cursor c = ((SimpleCursorAdapter)parent.getAdapter()).getCursor();
      c.moveToPosition(position);

      // get project name here

      String str_projectname= c.getString(c.getColumnIndex("project_name"));

      Intent intent = new intent(this, openactivity.class);

      intent.putExtra("project_name", str_projectname);

      startActivity(intent);


    //What else to add here?

}   
于 2012-12-29T18:41:54.893 に答える