Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从ListView项获取TextView?_Java_Android - Fatal编程技术网

Java 如何从ListView项获取TextView?

Java 如何从ListView项获取TextView?,java,android,Java,Android,我有以下代码来制作ListView: SimpleAdapter adapter=new SimpleAdapter(this, DictionaryDbWrapper.getInstance().getAllWords(), android.R.layout.simple_list_item_2, new String[]{DictionaryDbHelper.WORD, DictionaryDbHelper.CATEGORY}, ne

我有以下代码来制作ListView:

    SimpleAdapter adapter=new SimpleAdapter(this, DictionaryDbWrapper.getInstance().getAllWords(), 
            android.R.layout.simple_list_item_2, new String[]{DictionaryDbHelper.WORD, DictionaryDbHelper.CATEGORY},
            new int[]{android.R.id.text1, android.R.id.text2});
    mList.setAdapter(adapter);
它工作并向我显示元素,都是正确的。此外,我还有一个McClickListener,其中包含以下按项目单击的代码:

        View view=mList.getSelectedView();

        if (view==null) {
            Toast.makeText(UpdatingWordActivity.this, "1", Toast.LENGTH_LONG).show();
        }
但是mList.getSelectedView也会返回null。为什么?

更新:为什么此强制转换引发异常:

View v=(View)mList.getItemAtPosition(0);
Listview-McClickListener将视图v作为参数,您需要使用此参数来获取文本

这是Android的教程。

调用getSelectedView是为了在listview中使用单选按钮。看见getItemAtPosition只调用底层适配器上的getItemposition;在你的情况下,这是一个简单的套路。该转换引发异常,因为SimpleAdapter.getItem没有返回视图,而是返回适配器中给定位置的数据映射。其他适配器为getItem方法返回其他内容。例如,CursorAdapter返回一个游标


关于第一个问题的答案,请参见上面的答案

试试这个,TextView v=TextView mList.getItemAtPosition0;您的意思是要获取文本视图的字符串以便可以使用它吗。或者什么样的功能请详细解释。