создать пользовательский окноПользовательские UIWindow не показывая
let alertWindow = UIWindow(frame: UIScreen.mainScreen().bounds)
let background = UIToolbar(frame: alertWindow.frame)
background.barStyle = .Black
background.translucent = true
alertWindow.addSubview(background)
alertWindow.makeKeyAndVisible()
Он появляется только тогда, когда я ставлю переменную UIWindow в качестве глобальной переменной внутри AppDelegate.
Я вижу много Pods там, используя пользовательский интерфейс UIWindow для баннера уведомлений или пользовательского AlertView. Но они не ввели свой пользовательский интерфейс UIWindow внутри AppDelegate, он находится внутри своего пользовательского класса.
Например:
Это код из CRToast https://github.com/cruffenach/CRToast
@interface CRToastManager() <UICollisionBehaviorDelegate>
@property (nonatomic, readonly) BOOL showingNotification;
@property (nonatomic, strong) UIWindow *notificationWindow;
@property (nonatomic, strong) UIView *statusBarView;
@property (nonatomic, strong) UIView *notificationView;
Он положил пользовательское окно внутри класса CRToastManager, а не приложение делегата, в моем случае, когда я положил его в моем пользовательском классе , он не появляется. Он должен быть переменным внутри делегата приложения.
Как показать пользовательское окно и поместить его в пользовательский класс?
Я попытался, он не появился, если только окно не является глобальной переменной внутри класса AppDelegate. –
@EdwardAnthony как насчет windowLevel? Было ли установлено значение UIWindowLevelAlert? –
Да, я установил его в UIWindowLevelAlert, все еще не работал. Я прочитал этот http://stackoverflow.com/questions/28002992/custom-uiwindow-not-display , для того чтобы работать он должен быть глобальным var. Но CRToast помещает переменную окна в свой собственный класс. –