Я знаю, что вы можете установить стиль в iOS Designer
но как это сделать в коде?
Обычно вы запрашиваете ячейку с помощью этой функции
var cell = tableView.DequeueReusableCell (cellIdentifier);
Я видел решения Objective-C, которые создали новую ячейку. После новой парадигмы вам не нужно создавать новую ячейку, если вы используете RegisterClassForCellReuse
.
Это единственный способ установить стиль в коде?
if (cell == null) {
cell = new UITableViewCell (UITableViewCellStyle.Subtitle, cellIdentifier);
}
Из форума Xamarin:
если вы используете RegisterClassForCellReuse, я думаю, вам нужно использовать пользовательскую ячейку, которая подклассы UITableViewCell. В противном случае создается стандартная ячейка со стилем по умолчанию.
Следующие действия, регистрируя класс в ViewDidLoad
:
TableView.RegisterClassForCellReuse(typeof(SubtitleTableViewCell), new NSString("SessionCell"));
И подклассификация UITableViewCell
. Требуется атрибут [Export]
:
public class SubtitleTableViewCell : UITableViewCell
{
[Export("initWithStyle:reuseIdentifier:")]
public SubtitleTableViewCell(UITableViewCellStyle style, string cellId)
: base( UITableViewCellStyle.Subtitle, cellId) { }
}