Как я могу сделать сборщик, который имеет в качестве первого столбца frizzed «name
», а для второго он будет «data
»? Насколько я понял, это сборщик с двумя компонентами: name
и stuff from the list
, но он несколько name
, который должен быть только одним и оглушенным, не имея возможности переместить его и просто перечеркивать данные из списка. Он способен каким-то образом реализовать его?Пользовательский UIPickerView iOS
Это мой обычай UIPickerView
:
using System;
using System.Collections.Generic;
using UIKit;
namespace Test
{
class CustomPickerModel : UIPickerViewModel
{
private readonly IList<string> values;
string name;
public event EventHandler<PickerChangedEventArgs> PickerChanged;
public VehiclePickerModel(IList<string> values, string name)
{
this.values = values;
this.name = name;
}
public override nint GetComponentCount(UIPickerView picker)
{
return 2;
}
public override nint GetRowsInComponent(UIPickerView picker, nint component)
{
return values.Count;
}
public override string GetTitle(UIPickerView picker, nint row, nint component)
{
switch (component)
{
case 0:
return name;
case 1:
return values[(int)row];
default:
throw new NotImplementedException();
}
}
public override nfloat GetRowHeight(UIPickerView picker, nint component)
{
return 40f;
}
public override void Selected(UIPickerView picker, nint row, nint component)
{
if (this.PickerChanged != null)
{
this.PickerChanged(this, new PickerChangedEventArgs { SelectedValue = values[(int)row] });
}
}
}
}
Это визуализация того, что я хотел бы получить:
Вы пытаетесь иметь 'NAME:' в фиксированном положении слева от ваших данных выбора? – BytesGuy
Да, Как будто это было внутри сборщика и могло только двигаться для второго компонента: эти буквы A-I – yerpy