gpt4 book ai didi

iphone - 没有 Storyboard uiviewcontroller 对其他 uiviewcontroller 透明

转载 作者:行者123 更新时间:2023-11-28 22:30:44 24 4
gpt4 key购买 nike

我的目标是在另一个 uiviewcontroller 之上呈现一个透明的 uiviewcontroller,这样背景就是一个 viewcontroller..

I'm NOT using storyboard.

现在我只是添加了 UIViews 而不是 UIViewcontrollers 并且一切正常,问题是我觉得一个管理所有 View 的 View Controller (可以很容易地在一个单独的 View Controller 中)被认为是不好的做法 - 它只是感觉不对。

我正在考虑在我的基础 viewcontroller 中创建一个 viewcontroller 然后就

[self addSubview:otherVC.view] 

所以我得到的将是一个 View Controller ,它具有一个 viewcontroller 作为属性并将其 View 呈现为 subview 。

这被认为是一种不好的做法吗?

我该怎么办?

不起作用(适用于 ipad)

 self.view.backgroundColor = [UIColor clearColor];
self.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentModalViewController:modalVC animated:YES];

谢谢。

最佳答案

当我需要制作透明 View Controller 时,我做了这样的方法:

- (UIImage *)screenshot:(CGRect)cropRect {
UIGraphicsBeginImageContext(cropRect.size);
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextTranslateCTM(ctx, -cropRect.origin.x, -cropRect.origin.y - [[UIApplication sharedApplication] statusBarFrame].size.height);
[self.view.window.layer renderInContext:ctx];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return image;
}

然后我将它传递给透明 View Controller 并使其成为背景 View

UIImage *bgImage = [self screenshot:self.view.window.frame];
transparentViewController.view.backgroundColor = [UIColor colorWithPatternImage:bgImage];

类似的东西。我可以为此目的使用另一个 View ,它不一定必须是 self.view

关于iphone - 没有 Storyboard uiviewcontroller 对其他 uiviewcontroller 透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17545042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com