2012-06-15 67 views
0

我有一個嘗試檢索用戶在ListView中點擊的視圖的內容的問題。我的ListView使用SimpleAdapter進行設置,由列表中每個項目的「標題」和「子標題」組成。這些使用HashMap進行存儲。應用程序崩潰試圖從ListView中使用SimpleAdapter檢索視圖內容

在活動內部也是一個微調器,當用戶在微調器中選擇一個項目時,ListView被更新。這工作正常,我認爲有必要提及活動中發生的事情。

我想要做的是檢索用戶選擇了哪個項目,這樣我就可以根據他們的選擇來引導他們進行新的活動(現在只是試圖用Toast顯示視圖內容)。我想檢索存儲在項目的「engExp」項下的內容。

這裏是我的代碼:

// HASHMAP FOR LISTVIEW 
    List<HashMap<String, String>> fillMaps = new ArrayList<HashMap<String, String>>(); 
    for(int x = 0; x < expressionListForModule.getCount(); x++) { 
     HashMap<String, String> map = new HashMap<String, String>(); 
     map.put("engExp", expressionListForModule.getString(0)); 
     map.put("japDef", expressionListForModule.getString(1)); 
     fillMaps.add(map); 
     expressionListForModule.moveToNext(); 
    } 

    // SETUP LISTVIEW 
    SimpleAdapter adapter2 = new SimpleAdapter(this, fillMaps, android.R.layout.simple_list_item_2, new String[] {"engExp","japDef"}, new int[] {android.R.id.text1, android.R.id.text2}); 
    ListView lv = (ListView) findViewById(R.id.expressionList); 
    lv.setAdapter(adapter2); 
    lv.setTextFilterEnabled(true); 
    lv.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      Toast.makeText(getApplicationContext(), ((TextView) view).getText(), Toast.LENGTH_LONG).show(); 
     } 
    }); 

具體來說,就是造成應用程序崩潰的項目是這樣的: ((TextView的)視圖).getText()

如果您需要查看更多我的代碼,請讓我知道。

任何幫助表示讚賞,在此先感謝。

+0

你必須寫代碼即可獲得從TextView的文本是onItemclick())方法中,並通過使用視圖參數u能得到的文本嘗試這種字符串contentForLink = view.getText()的toString(); – Santosh

+0

這說明錯誤如下: 類型的方法getText()未定義查看 – mwrazam

回答

2

嘗試

lv.setOnItemClickListener(new android.widget.AdapterView.OnItemClickListener() { 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     TextView v = (TextView) view.findViewById(android.R.id.text1); 
     String contentForLink = v.getText().toString(); 
     Toast.makeText(getApplicationContext(), contentForLink, Toast.LENGTH_LONG).show(); 
    } 
}); 
+0

這肯定會導致崩潰!然而,現在發生了一些奇怪的事情。 Spinner項目本身的文本不是顯示列表項本身的內容,而是顯示出來的內容。謝謝。 – mwrazam

+0

我不確定爲什麼它不能與你第一次使用的代碼一起工作。但再次輸入後,它完美運行!我的角色在某個地方一定是個愚蠢的錯誤。非常感謝。 – mwrazam

相關問題