在XAMARIN中从UIScrollView中移除UIView

3

我有几个控件(UIView的子类)放置在一个UIScrollView上。现在我想将它们从UIScrollView中删除并创建新的控件。下面的代码运行了,但没有效果! 我做错了什么吗?

        for (int i = 0; i < myScroll.Subviews.Length; i++) {
            Console.WriteLine (myScroll.Subviews [i].GetType ());
            myScroll.Subviews [i].Dispose ();
            myScroll.Subviews [i] = null;
        }
2个回答

12

使用RemoveFromSuperview():

foreach(View sub in myScroll.Subviews)
{
   sub.RemoveFromSuperview();
}

0

您必须从super视图中移除您的控件/视图:
如果您有这些控件层次结构

CustomControl <- UIView <- UIScrollView

您可以通过使用方法ViewWithTag(int tag)在父级UIViewUIScrollView中找到CustomControl
但是:要成功删除CustomControl,您只需调用:

UIView.ViewWithTag(tag).RemoveFromSuperView();

而下一行代码不会删除您的控制:

UIScrollView.ViewWithTag(tag).RemoveFromSuperVew();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接