Alguém sabe porque quando eu clico no ListView para scrollar, eu não consigo mais selecionar nenhum item do ListView??
Segue código:
Adapter:
package br.com.i2mobile.Adapters;
import br.com.i2mobile.IGmail.R;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class AnexarAdapter extends BaseAdapter {
private Context ctx;
private String[] arquivos;
public AnexarAdapter(Context ctx, String[] arquivos){
super();
this.ctx = ctx;
this.arquivos = arquivos;
}
public int getCount() {
return arquivos.length;
}
public Object getItem(int position) {
return arquivos[position];
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater = (LayoutInflater) ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.item_escolher_pasta, null);
TextView txt = (TextView) view.findViewById(R.id.txtNomePastas);
txt.setText(arquivos[position]);
notifyDataSetChanged();
return view;
}
}
Código de atualização: O mesmo está contido na minha Activity!
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DIALOG_ANEXAR:
Dialog dialogAnexar = new Dialog(EscreverEmailScreen.this);
dialogAnexar.setContentView(R.layout.escolher_pasta);
dialogAnexar.setTitle("Pastas e Arquivos");
lv = (ListView) dialogAnexar.findViewById(R.pastas.listPastas);
atualizar();
dialog = dialogAnexar;
break;
}
return dialog;
}
private void atualizar() {
File f = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + anexo);
if(f.list().length > 0) {
pastas = f.list();
} else {
pastas = null;
}
AnexarAdapter adapter = new AnexarAdapter(this, pastas){
public long getItemId(int position) {
return super.getItemId(position);
}
};
lv.removeAllViewsInLayout();
lv.setAdapter(adapter);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
anexoAux = pastas[position];
if(anexoAux.indexOf(".") == anexoAux.length() - 4) {
anexo = anexo + "/" + anexoAux;
Toast.makeText(getBaseContext(), "Arquivo " + pastas[position] + " anexado com sucesso!", Toast.LENGTH_LONG).show();
dialog.dismiss();
} else {
anexo = anexo + "/" + anexoAux;
atualizar();
}
}
});
}
Alguém me ajuda? Já pesquisei muito e não consegui uma resposta descente!
Abraço,
