2017-02-21 2 views
0

Ich möchte fragen, was Befehl sollte ich ein Array von Elementen von einer Klasse zur Haupttätigkeit passieren verwenden, und dann dieses Array von Elementen verwenden, um eine ListenansichtPass Arrays Xamarin Android

var result = webservice.salesOrderList(apikey, null); 

ich bevölkern muss das Ergebnis in der Hauptaktivität übergeben und dann in einer Listenansicht verwenden.

Antwort

0

Zum Beispiel, wenn Ihr Ergebnis von var result = webservice.salesOrderList(apikey, null) ; ist ein Array von Strings, können Sie dieses Ergebnis in der Klasse zum Beispiel wie folgt definieren:

public class DataSource 
{ 
    public string[] result { get; set; } 

    public DataSource() 
    { 
     result = webservice.salesOrderList(apikey, null); 
    } 
} 

Dann erstellen Sie Ihren Adapter die Datenquelle Typ String-Array übereinstimmen zum Beispiel:

public class MainAdapter : BaseAdapter<string> 
{ 
    private string[] items; 
    private Activity context; 

    public MainAdapter(Activity context, string[] items) : base() 
    { 
     this.context = context; 
     this.items = items; 
    } 

    public override string this[int position] 
    { 
     get 
     { 
      return items[position]; 
     } 
    } 

    public override int Count 
    { 
     get 
     { 
      return items.Length; 
     } 
    } 

    public override long GetItemId(int position) 
    { 
     return position; 
    } 

    public override View GetView(int position, View convertView, ViewGroup parent) 
    { 
     View view = convertView; 
     if (view == null) 
      view = context.LayoutInflater.Inflate(Android.Resource.Layout.SimpleListItem1, null); 
     view.FindViewById<TextView>(Android.Resource.Id.Text1).Text = items[position].ToString(); 
     return view; 
    } 
} 

Schließlich diesen Adapter für Ihre ListView verwenden:

public class MainActivity : ListActivity 
{ 
    protected override void OnCreate(Bundle bundle) 
    { 
     base.OnCreate(bundle); 
     var data = new DataSource(); 

     ListAdapter = new MainAdapter(this, data.result); 
    } 
} 

Dies ist die einfachste Methode, um eine ListView zu erstellen, können Sie natürlich Ihren Artikel-Stil anpassen, oder die ListView. Weitere Informationen zum Erstellen eines ListView in Xamarin.Android finden Sie unter ListViews and Adapters.