如何阅读ListView中的实际内容,而不是它在Android应用程序中的位置()

博观而约取,厚积而薄发。这篇文章主要讲述如何阅读ListView中的实际内容,而不是它在Android应用程序中的位置?相关的知识,希望能为你提供帮助。
我有一个ListView,我用动态ArrayList填充,我使用OnItemClickListener使它在我点击它们时做了一些事情(Code bellow)。

ArrayAdapter< String> arrayAdapter = new ArrayAdapter< String> (this,android.R.layout.simple_list_item_1,txtOnlyList); returnSaveNotesList.setAdapter(arrayAdapter); AdapterView.OnItemClickListener noteClickListener = new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView< ?> txtOnlyList, View view, int position, long id) { if(position == 0 ) { Intent intent = new Intent(ReadFromFile1.this, SaveAndRstoreNote.class); intent.putExtra("firstNote","1 .txt"); startActivity(intent); } } }; returnSaveNotesList.setOnItemClickListener(noteClickListener);

【如何阅读ListView中的实际内容,而不是它在Android应用程序中的位置()】现在到了棘手的部分,我想要,以某种方式能够读取实际写入的东西让我们说位置[0],实际的字符串。有没有办法实现这一目标?
答案
public void onItemClick(AdapterView< ?> txtOnlyList, View view, int position, long id) { if (position == 0) { String yourString = txtOnlyList.get(position); // use this Intent intent = new Intent(ReadFromFile1.this, SaveAndRstoreNote.class); intent.putExtra("firstNote", "1 .txt"); startActivity(intent); } }

另一答案你的ArrayAdapter< String> 有一个getItem()方法,返回给定Stringposition
另一答案我用过getItemAtPosition(position)
这是整个代码:
ArrayAdapter< String> arrayAdapter = new ArrayAdapter< String> (this,android.R.layout.simple_list_item_1,txtOnlyList); returnSaveNotesList.setAdapter(arrayAdapter); AdapterView.OnItemClickListener noteClickListener = new AdapterView.OnItemClickListener(){ @Override public void onItemClick(AdapterView< ?> txtOnlyList, View view, int position, long id) { if(position == 0 ){ Intent intent = new Intent(ReadFromFile1.this, SaveAndRstoreNote.class); String stringFromArray=txtOnlyList.getItemAtPosition(position).toString(); // I added this intent.putExtra("firstNote","1 .txt"); startActivity(intent); } } }; returnSaveNotesList.setOnItemClickListener(noteClickListener);

另一答案在OnItemClick函数中传递的View类型参数是该位置的列表项视图。
AdapterView.OnItemClickListener noteClickListener = new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView< ?> txtOnlyList, View view, int position, long id) { TextView tv = (TextView) view.findViewById(R.id.tv); String text = tv.getText().toString(); //The required text is available in this variable } }


    推荐阅读