如何创建通用数组以添加任何视图

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建通用数组以添加任何视图相关的知识,希望对你有一定的参考价值。

是否可以添加所有视图?

        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 objec上调用该方法很方便,则可以创建自己的扩展方法来执行此操作。

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)

以上是关于如何创建通用数组以添加任何视图的主要内容,如果未能解决你的问题,请参考以下文章

在片段中添加 ListView

教程4 - 验证和权限

以编程方式添加的视图不正常

如何使用 tabLayout 在 ViewPager 中显示片段?

BottomNavigationView - 如何避免重新创建片段并重用它们

如何在通用相册中创建视图(通用)项目 - 网址方向问题