1

嗨,我有一个 android 应用程序,我在我的 Activity 中使用了一个 sqlite 数据库和一个 listview。现在我想使用 onListItemClick 但我不知道如何获取我单击的值并使用该值打开一个新活动:(

这是我的代码:

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

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

        ladeDaten(); 

    }

我的 ladeDatan 方法:

  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

我认为您使用游标从数据库中获取数据。而不是使用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 添加扩展 ListActivity。

public class MainActivity extends ListActivity

但我认为最onItemClick()好像维诺所说的那样使用

于 2013-01-22T16:42:33.713 回答