【发布时间】:2017-04-26 22:02:14
【问题描述】:
我创建了第二个窗口以在我的应用中显示自定义通知:
@property (strong, nonatomic) UIWindow *window2;
这就是我让它出现的方式:
self.window2 = [[UIWindow alloc] initWithFrame:CGRectMake(0, 0, SCREEN_BOUNDS.size.width, 50)];
self.window2.backgroundColor = [UIColor blackColor];
self.window2.windowLevel = UIWindowLevelAlert;
self.window2.rootViewController = custonViewController;
[self.window2 makeKeyAndVisible];
问题是 custonViewController 内没有触摸事件有效。
我尝试了一切,甚至子类UIWindow 并覆盖(void)sendEvent:(UIEvent *)event。但它也不起作用。
如何让我的应用程序删除以知道 window2 已被触摸/点击? 有什么想法吗?
【问题讨论】:
-
您使窗口尺寸变小并远离屏幕。为什么你认为触摸会起作用?
-
不,我不知道。它出现在屏幕内,我只是错误地输入了-50..我刚刚更正了它..
-
请停止大喊大叫。你仍然有一个问题,你的窗口的高度只有 50 点高。这真的是你想要的吗?这几乎没有覆盖状态栏。
-
是的,这就是我想要的。它有足够的空间来捕获触摸/点击事件。它结束了一切。这正是 Whatsapp 和许多其他科技公司所做的。
标签: ios objective-c uiwindow