ios - 在导航栏上更改 UIButton 的标题,一瞬间出现错误的标题 iOS
<p><p>在注册期间,我的 iOS 应用程序中有一个 ViewController ,用户可以选择跳过。但是,如果他们开始该步骤,他们要么必须完成它,要么点击撤消,这样部分信息就不会被保存。为了确保这一点,我隐藏了转到下一个屏幕的导航栏按钮。起初,我的文字是“SKIP”,然后当你开始输入信息时,它就会消失,一旦你输入了足够的信息,标题应该会变成“NEXT”。它也可以向后工作。你可以输入足够的信息让“NEXT”出现,然后点击撤消,按钮消失,继续点击撤消,按钮应该再次显示“跳过”。</p>
<p>问题是,当按钮重新出现时,它仍然具有旧标题,然后再更改为新标题。所以它会说“SKIP”,用户开始输入信息,它消失了,用户输入了所有信息,它重新出现,说“SKIP”片刻,然后变成“NEXT”。 </p>
<p>这是在信息更新时调用的函数,检查按钮应显示的内容:</p>
<pre><code>-(void)checkValid
{
if( /*starting condition*/ )
{
;
;
;
;
;
;
}
else if( /* complete condition */ )
{
;
;
;
;
;
;
}
else /* in between condition */
{
;
;
}
}
</code></pre>
<p>_nextButton 是我拖到 IB 导航栏上的自定义 UIButton。 _nextBarButtonItem 是 UIButton 在 View 层次结构中出现的 UIBarButtonItem。我最初只是设置了 UIControlStateNormal 的标题,但我想可能当按钮出现时它处于不同的状态,所以我尝试添加每个状态...</p>
<p>有什么想法可能会出错吗?我不会在其他可能有冲突的地方更改标题。 </p>
<p>感谢任何提示。</p>
<p>edit - 我已经尝试更改它,以便只更改 _nextButton 的 hidden 属性,因此 _nextBarButtonItem 的 enabled 属性始终处于打开状态。这允许相同的功能(因为 _nextButton 是隐藏的,所以您不能按下它),但它仍然只显示不正确的文本一瞬间。代码与我之前发布的完全相同,只是所有 调用都被注释掉了。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>好的,在我们尝试任何过于激烈的事情之前,这里有一些非编码解决方案(我相信您已经尝试过这些,但再尝试其中一个永远不会太晚。:D)</p>
<ul>
<li>尝试使用“产品”>“清理”“清理”您的缓存/目标。</li>
<li>您是在 sim 上还是在有形的 iOS 设备上进行测试?如果您在模拟器上,请运行项目,选择“iOS 模拟器”(从屏幕顶部)>“重置内容和设置”。</li>
<li>如果这些不起作用,您可以将项目放在 GitHub 上,我会下载/查看它。你永远不知道,可能是那些奇怪的 Xcode 怪癖之一! ;)</li>
</ul>
<p><em>对不起,基本解决方案。就我个人而言,没有手头的实际文件很难解决问题。对不起!</em></p></p>
<p style="font-size: 20px;">关于ios - 在导航栏上更改 UIButton 的标题,一瞬间出现错误的标题 iOS,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/29450096/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/29450096/
</a>
</p>
页:
[1]