J'ai une activité qui charge tous les bons sur le serveur vers le téléphone du client. Dans cette activité, j'ai 2 boutons. Le premier bouton recevra tous les bons achetés par le client. La seconde obtiendra la liste de tous les bons disponibles que le client peut acheter.onListItemClick de Android ListView - Comment activer onListItemCLick et désactiver si nécessaire?
Maintenant, le problème est, je n'ai besoin que de onListItemClick
pour la liste des bons disponibles (lorsqu'ils cliquent sur ces bons, ils ont l'option d'acheter). J'utilise ListView
comme ListActivity
. Lorsque je définis onListItemClick
, l'événement s'applique également aux bons achetés.
Comment puis-je désactiver l'événement onListItemClick
lorsque les clients affichent leurs propres bons et les activer lorsque les clients choisissent le bon d'achat?
Ceci est mon code de deux boutons:
public void btn_Own(View v){
if(!isConnected){
Toast toast = Toast.makeText(Voucher.this, "Cannot connect to internet", Toast.LENGTH_LONG);
toast.show();
return;
//finish();
}
if(email.equals("")){
Toast toast = Toast.makeText(Voucher.this, "Please log in to see your voucher!", Toast.LENGTH_LONG);
toast.show();
}else{
url = "http://wswob.somee.com/wobservice.svc/checkOwnVoucher/" + email + "/";
new checkingTask().execute();
}
}
public void btn_Shop(View v){
if(!isConnected){
Toast toast = Toast.makeText(Voucher.this, "Cannot connect to internet", Toast.LENGTH_LONG);
toast.show();
return;
//finish();
}
url = "http://wswob.somee.com/wobservice.svc/showVoucher";
new MyTask().execute();
}
Je suis nouveau à Android, donc je suis juste venu de savoir que je dois utiliser un adaptateur personnalisé pour le faire (pour autant que je sache) . Mais je me demande comment je peux le faire pendant que j'utilise asynctask et que je passe des paramètres différents quand j'en ai besoin pour exécuter des tâches différentes à partir du service web.
Voilà comment je reçois la liste après l'appel de service Web:
protected void onPostExecute(Void result){
super.onPostExecute(result);
ListAdapter adapter = new SimpleAdapter(
Voucher.this, voucherList,
R.layout.voucher_list, new String[]{"detail","price"},
new int[]{R.id.detail, R.id.price});
setListAdapter(null);
setListAdapter(adapter);
}
après un code. –
référez-vous à cette réponse: http://stackoverflow.com/a/7779199/2145360 – hayi