Ajouter des éléments à la liste sur Android dans Xamarin application
Je suis en train de remix la base Android conseils pour ajouter des éléments à une liste dans un Xamarin application, mais jusqu'à présent, je ne suis pas.
Dans Xamarin Studio, j'ai créé un Application Android ciblage plus récente et la Plus, et tous les paramètres par défaut. J'ai ensuite ajouté un ListView
à mon activité et a donné un id de @android:id/list
. J'ai changé l'activité code:
[Activity (Label = "MyApp", MainLauncher = true, Icon = "@drawable/icon")]
public class MainActivity : ListActivity
{
List<string> items;
ArrayAdapter<string> adapter;
protected override void OnCreate (Bundle bundle)
{
base.OnCreate (bundle);
SetContentView (Resource.Layout.Main);
items = new List<string>(new[] { "Some item" });
adapter = new ArrayAdapter<string> (this, Android.Resource.Layout.SimpleListItem1, items);
ListAdapter = adapter;
FindViewById<Button> (Resource.Id.myButton).Click += HandleClick;
}
protected void HandleClick(object sender, EventArgs e)
{
items.Add ("Another Item!");
adapter.NotifyDataSetChanged ();
Android.Widget.Toast.MakeText (this, "Method was called", ToastLength.Short).Show();
}
}
- Je construire l'application et l'exécuter sur mon Nexus 5 de l'appareil. L'application démarre fine, je peux cliquer sur le bouton et voir le débogueur frappé le gestionnaire. Le débogueur affiche pas d'autres problèmes, à la fois items.Add
et la NotifyDataSetChanged
méthodes sont appelées sans erreur, et la Toast
s'affiche sur mon écran du périphérique.
Toutefois, l'élément "Another Item!"
n'apparaît pas dans ma liste.
Je remarque qu'il y a un grand différence entre le lié question et ma solution. D'où la question liée a un code comme ceci:
setListAdapter(adapter);
J'ai plutôt fait:
ListAdapter = adapter;
Parce que le setListAdapter
méthode n'est pas disponible dans mon Xamarin solution, et j'avais supposé la propriété setter était destinée à faire de même.
Longue histoire courte: que dois-je faire pour ajouter dynamiquement des éléments de ma ListView?
OriginalL'auteur Jeroen | 2015-09-14
Vous devez vous connecter pour publier un commentaire.
Ajout d'élément dans votre liste, mais l'adaptateur n'est pas au courant de cette liste. Ce que vous devez faire est d'ajouter l'élément à la carte:
Vous pouvez ajouter et le point de ArrayAdapter directement en Java.
OriginalL'auteur Giorgi