我有一個側導航控制器,並通過一個UIButton呈現之後阻斷UITransitionView。當我做這個NC根視圖控制器直接[self presentviewcontroller: NC animated: YES completion: nil]
,由於某種原因,NC的菜單側由UITransitionView
,我不能去阻止消失。查看正在被呈現
我曾嘗試以下:
UIWindow *window = [(AppDelegate *)[[UIApplication sharedApplication] delegate] window];
window.backgroundColor = kmain;
CATransition* transition = [CATransition animation];
transition.duration = .5;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromTop;
[nc.view.layer addAnimation:transition forKey:kCATransition];
[UIView transitionWithView:window
duration:0.5
options:UIViewAnimationOptionTransitionNone
animations:^{ window.rootViewController = nc; }
completion:^(BOOL finished) {
for (UIView *subview in window.subviews) {
if ([subview isKindOfClass:NSClassFromString(@"UITransitionView")]) {
[subview removeFromSuperview];
}
}
}];
但它是非常哈克,並且在過渡時期的窗口變化RootViewController的,這是一個小震盪和navigationcontroller和右上角轉的一部分黑色。它看起來非常糟糕。
你有沒有找到根本原因?我在這裏遇到了同樣的問題。移除視圖或禁用視圖看起來像是一種解決方法,但我們如何避免它?我不明白它爲什麼出現。 – RainCast
很久以前,我不太清楚,但我相信我完全切換了庫並使用JASidePannelController: https://github.com/gotosleep/JASidePanels 更容易使用。 – Jameson
謝謝@jameson! – RainCast