c# - 如何创建通用数组来添加任何 View

标签 c# ios xamarin xamarin.ios

有什么办法可以添加所有 View 吗?

        View.Add(textFieldUser);
        View.Add(textFieldPassword);
        View.Add(buttonLogin);

这种方式很懒,我想添加一个函数和数组

public void add(UIViewController v, T[] arr){
    for(view in arr[i]){
      v.Add(view)
    }
}

这可能吗?

最佳答案

您编写的内容是完全可以接受的,但是如果您正在寻找在实际 UIViewController 对象上调用方法的便利性,那么您可以创建自己的扩展方法来执行相同的操作。

public static class UIViewControllerExtensions
{
    public static void AddRange(this UIViewController v, params UIView[] arr){
        for(view in arr[i]){
          v.Add(view)
        }
    }
}

然后可以调用为:

View.AddRange(textFieldUser, textFieldPassword, buttonLogin);

或者如:

var views = new UIView[] 
{
    textFieldUser, 
    textFieldPassword, 
    buttonLogin
}
View.AddRange(views)

关于c# - 如何创建通用数组来添加任何 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58753569/

相关文章:

ios - 如何将 NSPredicate 与包含联系人对象的数组一起使用

ios - 使用解析查询在 Swift 中调用 REST API

ios - 即使蓝牙关闭,iBeacon 也可以扫描 iOS 设备吗?

c# - 使用文件流创建新文件时访问被拒绝 - Xamarin IOS

xamarin - 注销显示警报 xamarin.forms

c# - ToolStripTextBox 延迟 TextChanged

c# - 返回一个实例

c# - Xamarin.iOS 上的 MakeGenericMethod/MakeGenericType

c# - 在linq循环中获取以前的值?

android - Xamarin Forms Labs 地理定位示例