如何在 xamarin ios 中将我的 NSArray 投射到 List<UIView>

How do I cast my NSArray to List<UIView> in xamarin ios

从 XIB 取回了视图列表,我需要单独引用它们。

var headerViews = NSBundle.MainBundle.LoadNib("LoginUpdateHeader",this,null);

我似乎无法执行此操作,因为我收到有关无法使用 [] 将索引应用于类型 Foundation.NSArray:

的错误
var view1 = headerViews[0];

所以我认为我需要将 NSArray 转换为列表之类的东西。我该怎么做或如何引用 NSArray 的不同元素?

简答

var view1 = headerViews.GetItem<UIView> (0);

长答案

NSArray 可以包含不同类型的元素 - 甚至是非 NSObject 子类(例如 CF* 类型)。这使得使用索引器不是很实用,因为它总是最终会被强制转换(因为除了 NSObject 之外别无他法)。

只要可能(如果所有类型都相同)Xamarin 的绑定是使用元素类型完成的,例如NSString[] GetList ().