ListView を埋めるのと同じ方法で、ArrayAdapter を作成する必要があります。
spinTime = FindViewById<Spinner>(Resource.Id.spinTimeChoose);
List<string> spinnerItems = new List<string>();
ArrayAdapter adapter new ArrayAdapter<string> (this,Android.Resource.Layout.SimpleSpinnerItem,spinnerItems);
adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
spinTime.Adapter = adapter;
spinTime.ItemSelected += (s, e) =>
{
Log.Debug("SpinnerItems", spinnerItems[e.Position]);
}
それが役に立てば幸い
編集:私は今あなたの質問を受け取ったと思います:)以下は、クリアランスのリストのカスタムアダプターの例です。ハードコーディングされたドイツ語の文字列で申し訳ありません。重要な部分は getView メソッドです。新しいリストアイテムがユーザーのビューに入るたびに呼び出されます。新しいビューをインフレートするか、null でない場合は convertView を再利用してリストの値を入力する必要があります。
class ClearanceListAdapter : BaseAdapter
{
private readonly List<Clearance> _clearances;
private readonly Activity _context;
public ClearanceListAdapter(List<Clearance> Clearances, Activity context)
{
_clearances = Clearances;
_context = context;
}
public override int Count
{
get { return _clearances.Count(); }
}
public override Java.Lang.Object GetItem(int position)
{
return null;
}
public override long GetItemId(int position)
{
return position;
}
public Clearance GetClearance (int position)
{
return _clearances.ElementAt(position);
}
public override Android.Views.View GetView(int position, Android.Views.View convertView, Android.Views.ViewGroup parent)
{
View view = (convertView ?? _context.LayoutInflater.Inflate(Resource.Layout.ClearanceListItem, parent, false));
Clearance clearance = _clearances[position];
view.FindViewById<TextView>(Resource.Id.txtClearanceDescription).Text = clearance.Description;
view.FindViewById<TextView>(Resource.Id.txtStartDate).Text = clearance.Start.ToString("g");
view.FindViewById<TextView>(Resource.Id.txtEndDate).Text = clearance.End.ToString("g");
return view;
}
}