有人知道如何在UICollectionView中子类Xamarin.iOS吗?
我试过这个
public class MyCustomUICollectionView : UICollectionView
{
[Export ("initWithFrame:")]
public InfinitiveScrollingUICollectionView (CGRect frame) : base(frame)
{
// initialization
}
}但我得到
UIKit.UICollectionView.UICollection(Foundation.NSCoder) has some invalid arguments Argument #1 cannot convertCoreGraphics.CGRectexpression to typeFoundation.NSCoder`.的最佳重载方法匹配
我也尝试过使用public InfinitiveScrollingUICollectionView (),但是
类型
UIKit.UICollectionView不包含接受'0‘参数的构造函数
我想覆盖LayoutSubviews。还是应该将UICollectionViewController用于这一目的?
发布于 2015-03-27 18:41:13
UICollectionView没有接受单个CGRect的构造函数,所以您也必须传递一个布局:
public class MyCustomUICollectionView : UICollectionView
{
public MyCustomUICollectionView(CGRect frame, UICollectionViewLayout layout)
: base(frame, layout)
{
}
}如果您愿意,也可以在内部创建布局,因此不必从外部传递它:
public class MyCustomUICollectionView : UICollectionView
{
private static readonly UICollectionViewLayout _layout;
static MyCustomUICollectionView()
{
// Just an example
_layout = new UICollectionViewFlowLayout();
}
public MyCustomUICollectionView(CGRect frame) : base(frame, _layout)
{
}
}https://stackoverflow.com/questions/29302301
复制相似问题