【问题标题】:UIPresentModalViewController view alpha is not being set未设置 UIPresentModalViewController 视图 alpha
【发布时间】:2012-02-18 12:11:29
【问题描述】:

我想展示一个视图控制器,其中我有一个背景图像视图。 该图像视图的 Alpha 为 0.5(希望添加为半透明黑色图像)。但是当我展示那个视图控制器时,alpha 不适用于视图。那张图片看起来完全是黑色的,好像还没有设置 alpha。

此问题仅适用于 iPad 设备。

请帮帮我。

Code:
ViewController1.m:
[self presentModalViewController:viewController2];

ViewController2.xib: (in nib I am setting below values no in code)
[self.view setBackgroundColor:[UIColor clearColor]];
[self.bgImageView setAlpha:0.5]; // this image is dark black, i want to display the 

它后面的屏幕内容(viewController1.view),有点半透明

我又尝试了一件事,这次我删除了 imageView 并将 uiview bgcolor 设置为黑色,不透明=NO,alpha=0.2(在笔尖本身中)。因此,虽然呈现的动画看起来很完美。但是当视图被放置后,它变成了 alpha=1.0(全黑)

我在哪里错了仍然没有透明度。

Answer Is Here: ModalViewController 存在一些错误/限制,因此在这种情况下最好使用 addSubview

【问题讨论】:

  • 贴一些代码,方便帮到你……
  • 我不确定模态视图控制器是否有透明的 self.view
  • 尝试在 ViewController2.xib 中为 view 和 bgImageView 将 opaque 设置为 NO。 NeverBe 也可能是对的,UIPopoverViewController 也有类似的问题
  • 您可能会尝试将其呈现为非模态,以便您知道问题是在模态还是在您的代码中
  • 您可能会在这里找到答案:[导航控制器上的透明模态视图][1] [1]:stackoverflow.com/questions/849458/…

标签: iphone ios ipad alpha presentmodalviewcontroller


【解决方案1】:

在展示模型视图控制器后尝试编写 imageview.alpha = 0.5 看看会发生什么。试一试。

编辑: 1)清理构建并运行

您尝试设置的图像 alpha 是在您正在呈现的 viewcontroller 中还是在 modalviewcontroller 中?

【讨论】:

  • 是的,我也在 viewDidLoad 中尝试过,所以在加载视图后我试图设置它。但是不工作,不知道原因似乎很奇怪?
【解决方案2】:

Answer Is Here: ModalViewController 存在一些错误/限制,因此在这种情况下最好使用 addSubview

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-23
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-24
    • 2015-07-26
    • 1970-01-01
    相关资源
    最近更新 更多