菜鸟教程小白 发表于 2022-12-13 01:42:10

ios - 使用 iOS 7 滑动导航时导航栏出现故障


                                            <p><p>当我使用滑动返回上一个 View 时,我的应用出现了奇怪的图形故障。</p>

<p>当我正常滑动并完成滑动手势时,一切正常。</p>

<p>当我取消滑动手势时,即:开始手势但然后向相反方向移动手指以停止手势并停留在当前 View 。</p>

<p>我遇到的问题如果我然后返回上一个屏幕,该 View 的 barbutton 项目与前一个 View 中的 barbutton 项目重叠。</p>

<p>截图:
起点:<img src="/image/pndTC.png" alt="enter image description here"/> </p>

<p>向后滑动手势和完成手势,转到上一个 View ,正常工作:<img src="/image/SAr2w.png" alt="enter image description here"/> </p>

<p>回扫手势和取消手势,停留在当前屏幕,然后返回上一屏幕,文本按钮重叠:<img src="/image/OT2c9.png" alt="enter image description here"/> </p>

<p>此图形故障仅在强制退出应用并重新启动时才会消失。当然,如果你再次引发故障,它会再次出现。</p>

<p>希望有一些开发人员遇到同样的问题。</p>

<p>编辑,问题原因如下代码:</p>

<pre><code>- (void)resetCacheAndRefreshTableAnimated:(BOOL)animated {
    ;
    ;
    NSError *error = nil;
    ;
    ;
}
</code></pre>

<p>此方法在 ViewWillAppear 中调用。删除方法调用后,问题就消失了。有什么想法吗?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>根据 Vikram 的回复和 StackOverflow 的另一个问题设法弄清楚。</p>

<p>所以问题是 <code></code> 在 <code>ViewWillAppear</code> 中被调用。
但是取消滑动时不应重新加载tableview。</p>

<p>此代码可防止在取消滑动时重新加载:</p>

<pre><code>id &lt;UIViewControllerTransitionCoordinator&gt; tc = self.transitionCoordinator;
if (tc &amp;&amp; )
{
    [tc notifyWhenInteractionEndsUsingBlock:
   ^(id&lt;UIViewControllerTransitionCoordinatorContext&gt; context)
   {
         if (!)
             // not cancelled, do it
             ; // this will clear the CoreData cache and forces a reload
   }];
}
else // not interactive, do it
    ;       // this will clear the CoreData cache and forces a reload
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 使用 iOS 7 滑动导航时导航栏出现故障,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/25701443/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/25701443/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 使用 iOS 7 滑动导航时导航栏出现故障