<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > iOS 7: 隱藏的特性和解決之道

          iOS 7: 隱藏的特性和解決之道

          作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          這里顯示了你該如何獲取一個用CTFontDescriptorRef標(biāo)示可下載的字體數(shù)組:

          CFDictionary *descriptorOptions = @{(id)kCTFontDownloadableAttribute : @YES};

          CTFontDescriptorRef descriptor = CTFontDescriptorCreateWithAttributes((CFDictionaryRef)descriptorOptions);

          CFArrayRef fontDescriptors = CTFontDescriptorCreateMatchingFontDescriptors(descriptor, NULL);

          系統(tǒng)不會檢查字體是否已存在于磁盤上而將直接返回同樣的列表。另外,這個方法可能會啟用網(wǎng)絡(luò)并造成阻塞,你不應(yīng)該在主線程中使用它。

          使用如下基于塊的 API 來下載字體:

          bool CTFontDescriptorMatchFontDescriptorsWithProgressHandler(

          CFArrayRef descriptors,

          CFSetRef mandatoryAttributes,

          CTFontDescriptorProgressHandler progressBlock)

          這個方法能操作網(wǎng)絡(luò)并傳遞下載進(jìn)度信息來調(diào)用你的progressBlock方法直到下載成功或者失敗。參考蘋果的 DownloadFont 樣例看如何使用它。

          有一些值得注意的地方,這里的字體只在當(dāng)前程序周期內(nèi)有效,下次運(yùn)行將被重新載入內(nèi)存。因為字體存放在共享空間中,你不能依賴于它們是否可用。很有可能也不能保證的說,系統(tǒng)會清理這個目錄,或者你的程序被拷貝到新的設(shè)備環(huán)境中,而這時又沒有這個字體存在,同時當(dāng)前處于沒有網(wǎng)絡(luò)的環(huán)境中。在 Mac 或是模擬器上,你能根據(jù)kCTFontURLAttribute獲得字體的絕對路徑,加載速度也會提升,但是在 iOS 上是不可能的,因為這個目錄在你程序之外,你需要再次調(diào)用CTFontDescriptorMatchFontDescriptorsWithProgressHandler。

          你也可以注冊新的kCTFontManagerRegisteredFontsChangedNotification通知來跟蹤新字體在何時載入到了字體注冊表中。你可以在 WWDC2013 的 Session223 “Using Fonts with TextKit”中查找更多信息。

          這還不夠?

          沒關(guān)系,iOS7 的新東西遠(yuǎn)不止如此!了解一下 NSHipster 你將明白語音合成相關(guān)的東西,base64、NSURLComponents、NSProgress、bar codes、reading lists 以及 CIDetectorEyeBlink。還有很多我們沒有涵蓋到的,比如蘋果 iOS7 的 API 變化,iOS 指南的新東西以及 Foundation Release Notes(這些都是服務(wù)于 OS X的,但是代碼都是共享的,也同樣適用于 iOS)。很多方法都還沒形成文檔,等著你來探究和 blog。


          上一頁 1 2 3 4 下一頁

          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();