2017-04-19 71 views
0

我正在處理NSAttributed字符串,其中包含大量字符100 000,1m。我應該如何處理迭代所有字符,改變顏色,前景和背景等操作。它工作正常,但它很慢,它凍結了一段時間,然後正常工作。處理大型操作Swift

回答

2

在後臺線程上修改它們。你可以爲用戶添加一個進度UI

DispatchQueue.global().async { 
    // modify attributed string 
    DispatchQueue.main.async { 
     // update UI 
    } 
} 
DispatchQueue.global().async { 
    // modify attributed string 
    DispatchQueue.main.async { 
     // update UI 
    } 
} 
+0

我試過這個,它在一些操作上工作正常..但是如何使它更快或類似的東西? – Elita

+0

這很難,你可以嘗試使用字符串,而不是屬性字符串(和其他方式處理屬性) – Alistra

+0

還有另一個應用程序,也是蘋果筆記應用程序,你可以輸入1000000個字符,它工作正常..嗯 – Elita