使用iOS模拟器,我试图让模式显示在具有透明背景的父控制器上。我将控制器定义为:
var controller = new DailyRewardController();
controller.ModalPresentationStyle = UIModalPresentationStyle.CurrentContext;
controller.View.BackgroundColor = UIColor.Clear;
controller.View.Opaque = true;
PresentViewController (controller, true, null);
控制器最初显示为透明背景,但随着动画结束,屏幕现在变为黑色,如下面的屏幕截图所示。注意:忽略可怕的弹出窗口;它只是一个原型: - )
这是动画结束后的显示方式;然而,随着动画的运行,它是透明的...任何想法为什么?
答案 0 :(得分:1)
完成presentviewcontroller的动画后,根视图控制器消失,这就是原因。
答案 1 :(得分:1)
使用以下代码,
var popupVC = this.Storyboard.InstantiateViewController("PopupViewController");
popupVC.ModalPresentationStyle = UIModalPresentationStyle.OverCurrentContext;
NavigationController.PresentModalViewController(popupVC, false);
答案 2 :(得分:0)
尝试删除
controller.View.Opaque = true;
您正在将背景颜色设置为"清除"但后来把不透明变为真,这是矛盾的。