ViewController.view addSubview 不显示,[UIApplication sharedApplication].keyWindow addSubview却可以显示

阿拉街道发到付件 2023-09-05 20:40:06

unity 打包出来的Xcode工程。通过调用方法在unity界面上,添加iOS 原生的View。在iOS 方面可以获取到unity传过来的ViewController。然后我通过ViewController.view 给上面添加原生界面。但是在界面上没有显示。代码如下:

    UIView * colorView = [[UIView  alloc]initWithFrame:CGRectMake(100, 100, 200, 200)];
    colorView.backgroundColor = [UIColor blueColor];
    colorView.tag = 10001;
    [mainViewController.view addSubview:colorView];

    for (UIView *subViews in mainViewController.view.subviews) {
        NSLog(@"READY:subView:%@",subViews);
    }

通过打印mainViewController.view.subviews,可以看到,colorView 已经添加到上去了但是就是不显示。

READY:subView:<UIView: 0x170153f20; frame = (100 100; 200 200); tag = 10001; backgroundColor = UIExtendedSRGBColorSpace 0 0 1 1; layer = <CALayer: 0x283c79140>>

(补充:没有设置隐藏熟悉,没有remove)

但是keyWindow addSubview 却能显示

    UIView * colorView = [[UIView  alloc]initWithFrame:CGRectMake(100, 100, 200, 200)];
    colorView.backgroundColor = [UIColor blueColor];
    colorView.tag = 10001;
    [[UIApplication sharedApplication].keyWindow addSubview:colorView];

请问这种问题应该怎么解决呢?

...全文
6384 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
wbandzlhgod 2023-10-30
  • 打赏
  • 举报
回复
层级问题

29,046

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧