美文网首页
【问题收集】添加视图到window上,出现布局错误

【问题收集】添加视图到window上,出现布局错误

作者: 小子爱搞事 | 来源:发表于2017-02-09 11:28 被阅读33次

项目中需要做很多的提示框,选择框,这些都是添加 window 上的。

之前使用的 window 是 keyWindow

#define AGWindow    [[UIApplication sharedApplication] keyWindow]

// 添加视图
[AGWindow addSubview:self];
正常显示:
Paste_Image.png

在开发中,后来出现了添加在 window 上的控件位置出现错误的问题

异常显示:
Paste_Image.png

视图不能够正常显示

项目中出现问题的原因

在项目中,有添加一个 topWindow ,设置的 frame 正好是上面错误显示时黑色视图部分,说明获取到的 keyWindow 是我们自己添加的 topWindow,视图被添加到了 topWindow 上面,因此出现错误

处理:

获取 AppDelegate 的 window 来添加视图

#define AGWindow     [[UIApplication sharedApplication].delegate window]

注意:

keyWindow 说明:

查找应用程序的主窗口对象。一般情况就是UIWindow。当然一个应用程序可以有多个window,键盘是一个window,[[UIApplication sharedApplication] keyWindow]就是查找当前应用程序的主window

如果有实现自己的 customWindow,通过 [[UIApplication sharedApplication] keyWindow] 方法获取的 window 在默写情况下可能是你的 customWindow,需要特别注意

相关文章

  • 【问题收集】添加视图到window上,出现布局错误

    项目中需要做很多的提示框,选择框,这些都是添加 window 上的。 之前使用的 window 是 keyWind...

  • Activity 视图显示

    一、创建给Window添加布局视图 创建显示Activity视图,需要调用setContentView() 二、W...

  • Listview(RecyclerView)动态addview后

    问题: 之前在写一个比较复杂的RecyclerView布局时,需要在item的子视图中动态添加视图!动态添加布局到...

  • 无标题文章

    UIWindow 最上层添加视图 如果新建的视图已经被addSubView,window再添加就会添加不上??!!待思考

  • iOS添加视图到window

    一直用[[UIApplication sharedApplication].windows lastObject]...

  • 一个导航条

    导航栏下面添加的view会出现布局错误,解决办法先记下来。将添加的视图移到导航栏的下面 这种方式解决的话,注意fr...

  • 在window上添加子视图不显示

    最近做项目遇到了这样一个问题:在一个页面中点击模态弹出视图再dismiss回原来的页面并在window上添加子视图...

  • UIPanGestureRecognizer与UITableVi

    问题描述:window的根控制器上添加了UITableView,还有侧边栏视图,起初为了实现拖动完成侧边栏显示/不...

  • 在UINavigationController下的-(void)

    viewWillAppear 只在该视图控制器 视图直接添加到 window 上的时候才会调用。 比如 navig...

  • xib添加约束

    1、当出现这种布局的时候; 视图1和视图2 3分别以上下的姿态布局,当从上往下添加约束的时候,只需要对视图1 和视...

网友评论

      本文标题:【问题收集】添加视图到window上,出现布局错误

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