xamarin.forms 中带有配件的 ImageCell
ImageCell with accessories in xamarin.forms
我想像 iPhone 的“设置”中那样使用带有附件(向右箭头)的 ImageCells 构建一个 TableView。
但不确定如何实施。有人可以帮忙吗?
子类 Xamarin.Forms ImageCell,为您的子类创建一个 CustomRenderer,并在 Renderer 的 GetCell 方法中将 iOS UITableViewCell 的附件设置为 DisclosureIndicator。
编辑 7/21(添加示例代码)
MyImageCell.cs
using Xamarin.Forms;
namespace ProjectName
{
public class MyImageCell : ImageCell
{
public bool ShowDisclosure { get; set; }
}
}
MyImageCellRenderer.cs
using ProjectName;
using ProjectName.iOS;
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
[assembly:ExportRenderer(typeof(MyImageCell), typeof(MyImageCellRenderer))]
namespace ProjectName.iOS
{
public class MyImageCellRenderer : ImageCellRenderer
{
public override UITableViewCell GetCell(Cell item, UITableViewCell reusableCell, UITableView tv)
{
var c = base.GetCell(item, reusableCell, tv);
var view = (MyImageCell)item;
c.Accessory = view.ShowDisclosure
? UITableViewCellAccessory.DisclosureIndicator
: UITableViewCellAccessory.None;
return c;
}
}
}
我想像 iPhone 的“设置”中那样使用带有附件(向右箭头)的 ImageCells 构建一个 TableView。 但不确定如何实施。有人可以帮忙吗?
子类 Xamarin.Forms ImageCell,为您的子类创建一个 CustomRenderer,并在 Renderer 的 GetCell 方法中将 iOS UITableViewCell 的附件设置为 DisclosureIndicator。
编辑 7/21(添加示例代码)
MyImageCell.cs
using Xamarin.Forms;
namespace ProjectName
{
public class MyImageCell : ImageCell
{
public bool ShowDisclosure { get; set; }
}
}
MyImageCellRenderer.cs
using ProjectName;
using ProjectName.iOS;
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
[assembly:ExportRenderer(typeof(MyImageCell), typeof(MyImageCellRenderer))]
namespace ProjectName.iOS
{
public class MyImageCellRenderer : ImageCellRenderer
{
public override UITableViewCell GetCell(Cell item, UITableViewCell reusableCell, UITableView tv)
{
var c = base.GetCell(item, reusableCell, tv);
var view = (MyImageCell)item;
c.Accessory = view.ShowDisclosure
? UITableViewCellAccessory.DisclosureIndicator
: UITableViewCellAccessory.None;
return c;
}
}
}