5
我想在Xamarin窗體中轉換爲IOS中的UICollectionView進行自定義視圖。Xamarin形式UICollectionView與DataTemplate
這第一件事情是很簡單的事:
查看:
public class CollectionView : View
{
}
渲染:
public class CollectionViewRenderer : ViewRenderer<CollectionView, UICollectionView>
{
protected override void OnElementChanged(ElementChangedEventArgs<CollectionView> e)
{
base.OnElementChanged(e);
if (Control == null)
{
SetNativeControl(new UICollectionView(new CGRect(0, 0, 200, 200), new UICollectionViewFlowLayout()));
}
if (e.NewElement != null)
{
...
Control.Source = new CollectionViewSource(a, this);
Control.ReloadData();
}
}
}
現在我想養活這個的CollectionView用的DataTemplates(從DataTemplateSelector) 。但我無法找到一個方法來註冊類:
從模板,你可以這樣做:
Template.CreateContent();
得到UI元素。
但我怎麼能註冊它在的CollectionView在CollectionSource
例如爲:
CollectionView.RegisterClassForCell(typeof(????), "CellId");
嘿謝謝你的鏈接,這很有趣。他們似乎沒有註冊這些單元,但只是將它們取出。 https://github.com/XLabs/Xamarin-Forms-Labs/blob/master/src/Forms/XLabs.Forms.iOS/Controls/GridView/GridViewRenderer.cs#L89 – RVandersteen
我想你下來投票只有鏈接響應。 – RVandersteen
@RVandersteen,我已經更新了我的答案。 –