美文网首页
iOS,获取window上的view

iOS,获取window上的view

作者: GatesLand | 来源:发表于2022-10-24 17:00 被阅读0次

    获取UIwindow上view

    如果你在UIwindow上添加多个view,这个view如果只在一个页面展示,那可以把这个view设置全局变量,然后就可以全局使用他进行隐藏或者移除。但如果你在这个页面添加了view,在另一个页面想获取到这个view,这个时候,你可以使用tag来获取到这个view。首先我们先添加这个view到window上

    1.添加view到window上

      _noticeView = [[UIView alloc]initWithFrame:[UIScreen mainScreen].bounds];
      _noticeView.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.5f];
      UIWindow *keyWin = [UIApplication sharedApplication].keyWindow;
      _noticeView.tag = 10005;//设置tag
     [keyWin addSubview:_noticeView];//_noticeView是个全局变量的view
    

    2.获取这个tag的view

    在其他页面,根据tag获取到这个view,然后进去view的相关操作,比如将view移到最上面,或者隐藏,或者移除

        UIWindow *keyWin = [UIApplication sharedApplication].keyWindow;
        UIView *eleCerView = [keyWin viewWithTag:10005];
        if (eleCerView) {
            //如果有,将这个view移到window最上面
            [keyWin bringSubviewToFront:eleCerView];
            //也可以进行view的其他操作
            // [eleCerView removeFromSuperview];//移除view
        }
    

    参考链接:iOS开发之--在UIWindow上展示/移除一个View

    相关文章

      网友评论

          本文标题:iOS,获取window上的view

          本文链接:https://www.haomeiwen.com/subject/eoygzrtx.html