我正在开发需要 listView 的应用程序。当我运行该应用程序时,它工作正常,我使用以下代码:
listView = (ListView) findViewById(R.id.list);
listView.setOnItemClickListener(MainActivity.this);
adapterListView = new AdapterListView(MainActivity.this, itemList);
listView.setAdapter(adapterListView);
listView.setCacheColorHint(Color.TRANSPARENT);
Main Activity 实现了 OnItemClickListener ,其中我有:
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
ItemListView item = adapterListView.getItem(arg2);
for(ConsultaAndroid ca : lista_consulta) {
if(item.getTexto().contains(ca.getNome().toString()) && item.getTexto().contains(ca.getHorario())) {
Intent intent = new Intent();
intent.putExtra("nome", ca.getNome());
intent.putExtra("rg", ca.getRg());
intent.putExtra("cpf", ca.getCpf());
intent.putExtra("datanasc", ca.getDatanasc());
intent.putExtra("telefone", ca.getTelefone());
intent.putExtra("celular", ca.getCelular());
intent.putExtra("email", ca.getEmail());
intent.putExtra("endereco", ca.getEndereco()+", "+ca.getNumero()+" - "+ca.getBairro()+" - "+ca.getCidade());
intent.setClass(MainActivity.this,PacienteActivity.class);
startActivity(intent);
}
}
}
之后,如果我单击 DatePicker,当我设置新日期时,列表应该更新,它确实更新了,但是 onItemClick 停止工作。我在 DatePicker 的 OnDateSetListener() 中使用了相同的代码。
任何想法为什么会发生?
XML:
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#FFFFFFFF">
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="393dp"
android:divider="#ECECEC"
android:dividerHeight="1sp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="0.28"
android:text="Data" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="0.28"
android:text="Sair" />
</LinearLayout>
</LinearLayout>