1

こんにちは、Android アプリケーションがあり、アクティビティで sqlite データベースとリストビューを使用しています。今、onListItemClickを使用したいのですが、クリックした値を取得して、この値で新しいアクティビティを開く方法がわかりません:(

ここに私のコード:

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_show);

        mHelper = new DatenbankManager(this);
        mDatenbank = mHelper.getReadableDatabase(); 

        ladeDaten(); 

    }

私のladeDatenメソッド:

  private void ladeDaten() {
        Cursor KlassenCursor = mDatenbank.rawQuery(KLASSEN_SELECT_ROW, null); 
        startManagingCursor(KlassenCursor); 

        android.widget.SimpleCursorAdapter KlassenAdapter = new android.widget.SimpleCursorAdapter(this,
                android.R.layout.simple_list_item_1, 
                KlassenCursor, 
                new String[] {"name"},
                new int[] {
                android.R.id.text1
                });

        setListAdapter(KlassenAdapter);

    }

ここで動作しない私の onListItemClick :(

 @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {

     String selection = l.getItemAtPosition(position).toString();
     Toast.makeText(this, selection, Toast.LENGTH_LONG).show();

    }
4

2 に答える 2

1

データベースからデータを取得するためにカーソルを使用していると思います.useをonListItemClick()使用onItemClickListener()する代わりに、listViewアイテムの詳細を取得するには、次のコードを使用します

yourlistview.setOnItemClickListener(new OnItemClickListener() {

            @Override
            public void onItemClick(AdapterView<?> parent, View view,
                    int position, long id) {

                Cursor cursor = (Cursor) parent.getItemAtPosition(position);

               String itemid = cursor.getString(cursor.getColumnIndex("ColumnName");//Repeat for other values

              //Start the activity here
                Intent todayreview = new Intent(ReviewPayment.this,
                        ReviewandResend.class);
                todayreview.putExtra("iteid", itemid); 
                startActivity(todayreview);
            }
        });
于 2013-01-22T14:26:58.863 に答える
0

onListItemClick Addを使用するには、ListActivityを拡張します。

public class MainActivity extends ListActivity

しかしonItemClick()、Vinoが言ったように使用する方が良いと思います

于 2013-01-22T16:42:33.713 に答える