我是 Android 新手,我试图理解为什么以下代码不起作用:
...
matList = (ListView) findViewById(android.R.id.list);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_multiple_choice, mats);
matList.setAdapter(adapter);
matList.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
matList.setOnItemClickListener(this);
CheckedTextView v =(CheckedTextView) adapter.getView(1, null, null);
v.setText("n1");
特定行中的文本永远不会改变。我通过单击这样的项目找到了另一种方法(从上面继续):
matList.performItemClick(adapter.getView(i, null, matList), 2, 2);
}
public void onItemClick(AdapterView<?> arg0, View v, int p, long arg3) {
CheckedTextView mat = (CheckedTextView) v;
mat.setText("n2");
}
它有效...... ListView 的第二行变为“n2”,而第一行保持不变......但由于某种原因,它似乎不是正确的方法。我已经尽可能多地搜索了,但我没有设法在上面找到任何东西。请帮助我理解为什么第一种方法不起作用。