J'ai créé un exercice Android qui consiste en une entrée de texte, un bouton d'ajout et une liste dynamique. Les utilisateurs sont supposés pouvoir taper une chaîne dans l'entrée de texte, cliquer sur le bouton Ajouter et l'ajouter à la liste. Cependant, lorsque je lance ce script sur l'émulateur, rien ne se passe lorsque je clique sur le bouton Ajouter. La vérification du logcat n'aide pas, car aucun journal n'apparaît en cliquant sur le bouton. J'ai également essayé d'ajouter un point d'arrêt, mais, encore une fois, il ne se passe rien lorsque j'essaie de passer la barre. Quelqu'un peut-il m'aider s'il vous plaît? Je l'apprécierais grandement. Merci.Le bouton Ajouter une application de la liste dynamique ne fonctionne pas
package p.listviewexerice2;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity implements View.OnClickListener{
Button bt;
EditText et;
ListView lv;
ArrayAdapter<String> adapter;
ArrayList<String> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt = (Button) findViewById(R.id.button);
et = (EditText) findViewById(R.id.editText);
lv = (ListView) findViewById(R.id.listView);
list = new ArrayList<>();
list.add("x");
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,list);
lv.setAdapter(adapter);
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
Toast.makeText(getBaseContext(),list.get(position),Toast.LENGTH_SHORT).show();
}
});
}
@Override
public void onClick(View v){
if(v==bt){
String name = et.getText().toString();
if(name.isEmpty()){
Toast.makeText(getBaseContext(),"Empty entry",Toast.LENGTH_SHORT).show();
}
else{
list.add(name);
adapter.notifyDataSetChanged();
}
}
}
}
Onlick et setonitemclicklistener sont en fait différents. Le premier vérifie s'il y a une chaîne dans l'entrée, s'il y en a, alors il l'ajoute à la liste. Ce dernier répète simplement le contenu de l'élément lorsque vous cliquez dessus. – pxc3110