簡體   English   中英

沒有故事板uiviewcontroller透明於其他uiviewcontroller

[英]no storyboard uiviewcontroller transparent over other uiviewcontroller

我的目標是在另一個uiviewcontroller之上呈現一個透明的uiviewcontroller ,以便后台將成為一個viewcontroller。

I'm NOT using storyboard.

現在我只是添加UIViews而不是UIViewcontrollers,一切運行良好,買問題是我覺得一個管理所有視圖的視圖控制器(可能很容易在一個單獨的視圖控制器中)認為是不好的做法 - 它只是沒有感覺對。

我正在考慮viewcontroller inside of my base viewcontroller創建一個viewcontroller inside of my base viewcontroller然后

[self addSubview:otherVC.view] 

所以我得到的是一個視圖控制器,它將viewcontroller作為屬性並將其視圖顯示為子視圖。

那被認為是一種不好的做法嗎?

我該怎么辦?

不工作(適用於ipad)

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

TNX。

當我需要制作透明視圖控制器時,我做了這樣的方法:

- (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;
}

然后我將它傳遞給透明視圖控制器並使其成為背景視圖

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

這樣的事情。 我可以為此目的使用另一種觀點,它不一定是self.view

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM