iphone - ios setHidden :NO at begin of a long method does not show on display
<p><p>我有一个从 Web 服务加载数据的方法。
在该方法的开始,我喜欢显示一个 UIActivityIndicator。</p>
<p>但仅将隐藏更改为 NO 不会重绘 UIView。
所以 UIActivityIndicator 是在长时间加载数据后可见的,这肯定为时已晚。</p>
<p>那么如何告诉 UIView 在数据加载开始之前重绘 activityIndicator 呢?</p>
<pre><code>- (IBAction)loadData{
;
// here the activtyIndicator should appear
...
loadlongdataFromNet..
;
// here the activtyIndicator should disappear
</code></pre>
<p>}</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p><strong>切勿在主线程上执行网络和其他计算密集型操作!!!</strong></p>
<p>它将卡住/阻止用户界面。您应该将与网络相关的长处理移至后台线程:</p>
<pre><code>- (void)loadData
{
; // use this instead of setHidden
;
}
- (void)reallyLoadData
{
// network-heavy processing
// then:
;
}
</code></pre></p>
<p style="font-size: 20px;">关于iphone - ios setHidden :NO at begin of a long method does not show on display,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/13124226/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/13124226/
</a>
</p>
页:
[1]