简体   繁体   English

当另一个视图显示时,如何使我的背景视图变暗?

[英]How to make my background view to be dark when the another view is showing?

我有一个iPhone应用程序,在其中单击按钮会显示一个类似于alertview的视图。那时我希望剩余的视图(背景)成为阴影,就像我们在显示alertview时看到的背景一样。帮助我实现这一目标?

这相当简单,将新视图设为覆盖全屏的视图的子视图,并将alpha设置为0.7或您选择的颜色,然后呈现此视图,并且后面的所有内容都应变暗。

您可以只分配带有主视图框架的视图,并将背景色设置为灰色,当您单击按钮时,添加此视图然后添加指定的视图,或者可以在此灰色视图中添加指定的视图。

You can simply add a UIView as a subview of your controller view. 您可以简单地将UIView添加为控制器视图的子视图。 Set black as the backgroundColor of it with an alphaValue between 0 and 1. Remember to set the frame equals to the viewcontroller view 将black设置为它的backgroundColor,alphaValue介于0和1之间。请记住,将框架设置为等于viewcontroller视图

In your alertview callback, just remove the view. 在您的alertview回调中,只需删除视图。

When a button click for showing a view: 单击按钮以显示视图时:

-(void)yourButtonAction
{
  [self.view setAlpha:0.3];
}

Now when removing view like an alertview. 现在,当删除像alertview的视图时。

[self.view setAlpha:1.0];

最好的方法是创建一个新图像(黑色半透明背景补丁),并添加超级视图的背景并将超级视图的背景色设置为clearcolor。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM