我正在尝试创建我的第一个iPhone应用程序,我有一个应该是漆黑的视图。我的视图已正确连接到我的控制器(当我运行模拟器时,我的标签显示)。
我想添加一个黑色图层(因此屏幕看起来像iphone关闭)。不仅如此,当用户推动或与屏幕交互时,它应该仅在黑色层上触发这些动作。我将在该层下面有一些东西,比如标签persay。
当我在控制器中将亮度设置为0.0并运行模拟器时,它仍会显示视图:
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
[[UIScreen mainScreen] setBrightness: 0.0]; //<-- here
// Custom initialization
}
return self;
}
- (void)viewDidLoad
{
[super viewDidLoad];
[[UIScreen mainScreen] setBrightness: 0.0]; //<-- here as well. but nothing happens
self.navigationItem.hidesBackButton = YES;
// Do any additional setup after loading the view.
}
另外,我觉得设置亮度仍然会让用户与屏幕进行交互,这不是我想要的。有人可以帮忙吗?我可以添加黑色图像吗?
答案 0 :(得分:0)
您必须将setBrightness
语句放在- (void)applicationDidBecomeActive:(UIApplication *)application
中 - 它在任何其他地方都没有效果。要在应用后清理,您应该在- (void)applicationWillResignActive:(UIApplication *)application
恢复亮度。
答案 1 :(得分:0)
您可以在当前视图的顶部添加一个完全黑色的UIView
。
UIView *blackView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds];
blackView.backgroundColor = [UIColor blackColor];
[viewIWantToObscure addSubview:blackView];
这会使您想掩盖的视图(viewIWantToObscure
)完全变黑。至于您的要求的第二部分,触摸视图,更多关于发送触摸视图层次结构can be found here的信息。