簡體   English   中英

如何在ListView中獲取所選項?

[英]How to Get The Selected Item in ListView?

我正在構建一個帶有ListView的簡單應用程序。 在Java代碼中,我試圖找出當前選擇的項目。 http://developer.android.com/reference/android/widget/ListView.html上的ListView文檔中,我看到ListView類中有一個方法被調用

public void setSelection (int position) 

我找了一個名為getSelection()的類似名稱的方法,但沒有。

那么,首先,如何確定當前選擇ListView中的哪個項目? 我已經擁有ListView的對象,所以我只需要該方法來告訴我用戶點擊了哪個項目。

ListView myLV = (ListView) findViewByID(R.id.myListView);

另外,我可以定義一個“回調”函數,只要選擇了一個項目就會調用它嗎?

最后,我如何使用文檔來解決這個問題? 這是一個非常基本的問題,我應該能夠自己解決這個問題。 我做了一件看似正確的事情:我查看了ListView類的官方開發者頁面,但它沒有提供答案。 我如何為自己回答這些(基本)問題?

我找了一個名為getSelection()的類似名稱的方法,但沒有。 那么,首先,如何確定當前選擇ListView中的哪個項目?

超類AdapterView具有getSelectedItem()以及getSelectedItemId()等。 AbsListView也有getSelectedView() 但是當你使用setChoiceMode()時,這些只會起作用

OnItemClickListener可以讓您知道單擊它時單擊了哪個。

最后,我如何使用文檔來解決這個問題?

你在ListView的文檔中開始是正確的,但是轉到“繼承的方法”部分並檢查超類。

嘗試這個

  mylv.setOnItemClickListener(new OnItemClickListener() {
  public void onItemClick(AdapterView<?> myAdapter, View v, int position, long lng) {
    String selectedFromList =(String) (mylv.getItemAtPosition(position));

  }                 
});

您可以通過使用onitem click listener獲得該位置。通過使用項目點擊監聽器,您可以獲得列表中所選項目的位置。您可以將此位置放在Toast中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM