2

我正在开发需要 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>
4

1 回答 1

0

我不知道到底发生了什么,但是您可以在 startActivity 之后添加 break 或 return 以停止循环。但这不是重点)

布局 xml 很干净。你能显示完整的 MainActivity 代码吗?

于 2013-08-01T21:21:22.190 回答