java - android Listview onItemClick填充EditText

标签 java android android-listview onclicklistener

我正在开发一个用于文本语音识别的小程序,问题是语音识别正在填充listView,这很好,现在我想用单击的ListView项目的内容填充EditText: 我的代码:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (requestCode == VOICE_RECOGNITION_REQUEST_CODE)
        if(resultCode == RESULT_OK) {

            ArrayList<String> textMatchList = data
                    .getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);

            if (!textMatchList.isEmpty()) {
                mlvTextMatches.setAdapter(new ArrayAdapter<String>(this,
                                    android.R.layout.simple_list_item_1,
                                    textMatchList));


            }
        }

    mlvTextMatches.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id){
            //Not Sure what to do here!
            EditText InputText = (EditText) findViewById(R.id.inptWord);
        }
    });
    super.onActivityResult(requestCode, resultCode, data);
}`

有什么想法吗?

最佳答案

textMatchList 设为成员变量:

ArrayList<String> textMatchList = new ArrayList<String>();

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (requestCode == VOICE_RECOGNITION_REQUEST_CODE)
        if(resultCode == RESULT_OK) {
            textMatchList = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
    ...
    ...
    mlvTextMatches.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id){
            EditText InputText = (EditText) findViewById(R.id.inptWord);
            InputText.setText(textMatchList.get(position));
        }
    });
}

onItemClick 方法的 position 参数表示单击的列表项的位置。

关于java - android Listview onItemClick填充EditText,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34033882/

相关文章:

java - 警报管理器不工作 Android Java

android - 为什么 Android studio 无法在 Android Pie (9.0) 上运行应用程序?

android - android c native 应用程序和android应用程序之间的通信

java - Hibernate Criteria 多表

java - 使用ASM访问数组

java - ListView 不响应 Android 中的点击事件

android - 自定义 ListView 适配器,奇怪的 ImageView 行为

java - 如何实现类似于Google Play音乐应用的专辑屏幕的滚动效果?

java - Jboss 5CR2 支持 EJB2

android - 从 JSON 包中检索信息