如何从列表视图 onclick 项目中获取特定的 edittext 值?

How to get specific edittext value from listview onclick item?

我在每个列表项中有 2 个 edittext,所以单击一个项目时,我当前将所有文本同时显示在列表项中,但我希望它们分开。

xml

<EditText
        android:id="@+id/name"
        android:layout_width="wrap_content"
        android:layout_height="20dp"/>
<EditText
        android:id="@+id/roll"
        android:layout_width="wrap_content"
        android:layout_height="20dp"/>

onclick 函数

listviewQuestion.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                String questionid = String.valueOf(parent.getItemAtPosition(position));
                Toast.makeText(QuestionListActivity.this, item, Toast.LENGTH_LONG).show();
            }
        });

当前输出

{name=abc,roll=123}

但我想提取名称并单独滚动。

你能试试下面的代码吗?

listviewQuestion.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        EditText editTextName = view.findViewById(R.id.name);
        EditText editTextRoll = view.findViewById(R.id.roll);

        String name = editTextName != null ? editTextName.getText().toString() : "NULL";
        String roll = editTextRoll != null ? editTextRoll.getText().toString() : "NULL";

        Toast.makeText(QuestionListActivity.this, item, Toast.LENGTH_LONG).show();
    }
});

如果不行,我会移除。 我认为这样你可以阅读每个 EditText

的文本