菜鸟教程小白 发表于 2022-12-12 15:41:34

ios - UIViewController presentViewController modal在iOS7中没有动画


                                            <p><p>调用 <code>presentViewController:animated:completion:</code> 在 iOS7 中没有动画效果。 View 立即出现。动画在 iOS8 中正常工作。当前方法在我的应用程序的三个不同位置调用,它们都显示此行为。它发生在设备和模拟器上。</p>

<p>随后对 <code>dismissViewControllerAnimated:completion:</code> 的调用可在所有 iOS 版本中正确设置动画。 </p>

<h2>代码结构</h2>

<p>调用本方法的 ViewController 是<code>UINavigationController</code>的 Root ViewController ,而这个导航 Controller 是<code>UITabBarController</code>中的<code>viewControllers</code>之一</code>。 </p>

<p>每个调用都很简单,只需按一下按钮即可触发。这是其中一种情况:</p>

<p><code>GenreViewController *controller = [ init];
[ self presentViewController: Controller 动画:是完成:无];
</code></p>

<h2>尝试修复</h2>

<ul>
<li>显式调度到主线程</li>
<li>在演示前调用<code></code></li>
<li>添加显示 Controller 的延迟(只是为了看看会发生什么)</li>
</ul>

<p>在每种情况下,行为都没有改变。<br/>
任何帮助将不胜感激!</p>

<h1>更新 - 修复</h1>

<p>事实证明,<code>UITabBarController</code> 的 <code>modalPresentationStyle</code> 属性设置为 <code>UIModalPresentationCurrentContext</code>。这在 iOS7 中不会动画,您必须使用 <code>UIModalPresentationFullScreen</code> 的演示样式。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>你可以用这个</p>

<pre><code>   GenreViewController *addController = [

                     init];
   UINavigationController *navigationController = [

                           initWithRootViewController:addController];

   ;
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - UIViewController presentViewController modal在iOS7中没有动画,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/31160738/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/31160738/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - UIViewController presentViewController modal在iOS7中没有动画