在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

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

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

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

            分頁(yè)

            UIWebView 使用了新的技巧來(lái)自動(dòng)分頁(yè)帶paginationMode的網(wǎng)站。有一大堆與此功能相關(guān)的新屬性:

            @property (nonatomic) UIWebPaginationMode paginationMode NS_AVAILABLE_IOS(7_0);

            @property (nonatomic) UIWebPaginationBreakingMode paginationBreakingMode NS_AVAILABLE_IOS(7_0);

            @property (nonatomic) CGFloat pageLength NS_AVAILABLE_IOS(7_0);

            @property (nonatomic) CGFloat gapBetweenPages NS_AVAILABLE_IOS(7_0);

            @property (nonatomic, readonly) NSUInteger pageCount NS_AVAILABLE_IOS(7_0);

            現(xiàn)在而言,雖然這可能并非對(duì)于大多數(shù)網(wǎng)站都有用,但它肯定是生成簡(jiǎn)單的電子書(shū)閱讀器或顯示文本的一種更好的方式。加點(diǎn)樂(lè)子的話,請(qǐng)嘗試將它設(shè)置為UIWebPaginationModeBottomToTop。

            會(huì)飛的 Popovers

            想知道為什么你的popovers瘋了一樣到處亂飛?在UIPopoverControllerDelegate協(xié)議中有一個(gè)新的代理方法使你能控制它:

            (void)popoverController:(UIPopoverController *)popoverController

            willRepositionPopoverToRect:(inout CGRect *)rect

            inView:(inout UIView **)view

            當(dāng)popover錨點(diǎn)是指向一個(gè)UIBarButtonItem時(shí),UIPopoverController會(huì)有一些動(dòng)作,但如果你讓它在一個(gè)view或者rect中顯示,你可能就需要實(shí)現(xiàn)此方法并正常返回。一個(gè)花費(fèi)了我相當(dāng)長(zhǎng)的時(shí)間來(lái)驗(yàn)證的問(wèn)題——如果你通過(guò)改變preferredContentSize來(lái)動(dòng)態(tài)調(diào)整你的popovers,那么這個(gè)方法就特別要求得以實(shí)現(xiàn)。蘋(píng)果公司現(xiàn)在對(duì)改變popovers大小的請(qǐng)求更嚴(yán)格,如果沒(méi)有預(yù)留足夠的空間,popover將會(huì)到處移動(dòng)。

            鍵盤支持

            蘋(píng)果公司不只為我們提供了全新的framework用于游戲控制器,它也給了我們這些鍵盤愛(ài)好者一些提示!你會(huì)發(fā)現(xiàn)新定義的公用鍵像 UIKeyInputEscape 或 UIKeyInputUpArrow,可以使用所有新的 UIKeyCommand 類截查。在 iOS7 之前,只能通過(guò)一些難以言表的手段來(lái)處理鍵盤命令,現(xiàn)在,就讓我們操起藍(lán)牙鍵盤試試看我們能用這個(gè)做什么!

            開(kāi)始之前,你需要對(duì)責(zé)任者鏈有個(gè)了解。你的 UIApplication 繼承自 UIResponder,UIView 和 UIViewController 也是如此。如果你處理過(guò) UIMenuItem 并且沒(méi)有使用我的基于塊的包裝的話,那么你已經(jīng)了解了這些。事件先被發(fā)送到最上層的響應(yīng)者,然后一級(jí)級(jí)往下傳遞直到 UIApplication 。為了捕獲按鍵命令,你需要告訴系統(tǒng)你關(guān)心哪些鍵命令(而不是全捕獲)。為了完成這個(gè),你需要重寫(xiě)keyCommands這個(gè)新屬性:

            (NSArray *)keyCommands

            {

            return @[[UIKeyCommand keyCommandWithInput:@f

            modifierFlags:UIKeyModifierCommand

            action:@selector(searchKeyPressed:)]];

            }

            - (void)searchKeyPressed:(UIKeyCommand *)keyCommand

            {

            // Respond to the event

            }

            現(xiàn)在可別太激動(dòng),需要注意的是,這個(gè)方法只在鍵盤可見(jiàn)時(shí)有效(比如有類似 UITextView 這樣的對(duì)象作為第一響應(yīng)者時(shí))。對(duì)于全局熱鍵,你仍然需要用上面的方法。除卻那些,這個(gè)路徑還是很優(yōu)雅的。不要覆蓋類似 cmd-V 系統(tǒng)的快捷鍵,它會(huì)被自動(dòng)映射為粘貼功能。

            還有一些新的預(yù)定義的響應(yīng)行為如:

            1

            2- (void)increaseSize:(id)sender NS_AVAILABLE_IOS(7_0);

            - (void)decreaseSize:(id)sender NS_AVAILABLE_IOS(7_0);

            它們分別對(duì)應(yīng)著 cmd+ 和 cmd- 命令,用來(lái)放大/縮小內(nèi)容。

            匹配鍵盤背景

            蘋(píng)果公司終于公開(kāi)了 UIInputView,其中提供了一種方式——使用UIInputViewStyleKeyboard來(lái)匹配鍵盤樣式。這使得你可以編寫(xiě)自定義的鍵盤或者帶默認(rèn)樣式的默認(rèn)鍵盤擴(kuò)展(工具條)。這個(gè)類以前就存在了,不過(guò)現(xiàn)在我們終于可以繞過(guò)私有API的方式來(lái)使用它了。

            如果 UIInputView 是一個(gè) inputView 或者 inputAccessoryView 的根視圖,它將只顯示一個(gè)背景,否則它將是透明的。遺憾的是,這并不能讓你實(shí)現(xiàn)一個(gè)未填充的分離態(tài)的鍵盤,但它仍然比用一個(gè)簡(jiǎn)單的 UIToolbar 要好。我還沒(méi)看到蘋(píng)果在何處使用這個(gè)新API,貌似它只作為一個(gè) UIToolbar 使用在 Safari 上。

            了解你的網(wǎng)絡(luò)

            雖然早在 iOS4 的時(shí)候,關(guān)于網(wǎng)絡(luò)信息的大部分已經(jīng)在 CTTelephony 暴露了,但它通常只用于特定場(chǎng)景并非十分有用。iOS7 中,蘋(píng)果公司為其添加了一個(gè)方法,其中最有用的:currentRadioAccessTechnology。這個(gè)使你能知曉手機(jī)是處于較慢的GPRS還是高速的LTE或者介于其中。目前還沒(méi)有方法得到連接速度(當(dāng)然手機(jī)本身也無(wú)法獲取這個(gè)),但是這足以用來(lái)優(yōu)化一個(gè)下載管理器,讓其在EDGE下不用嘗試同時(shí)去下載6張圖片了。

            現(xiàn)在還沒(méi)有currentRadioAccessTechnology的相關(guān)文檔,因此存在一些不正規(guī)或者錯(cuò)誤的用法。當(dāng)你想要獲取當(dāng)前網(wǎng)絡(luò)信號(hào)值,你應(yīng)當(dāng)注冊(cè)一個(gè)CTRadioAccessTechnologyDidChangeNotification通知而不應(yīng)該去輪詢這個(gè)屬性。為了獲取這些通知,你需要使用CTTelephonyNetworkInfo的一個(gè)實(shí)例,注意不要在通知中創(chuàng)建 CTTelephonyNetworkInfo 的實(shí)例,否則會(huì) crash。

            在這個(gè)簡(jiǎn)單的例子中,我在block中捕獲并持有了 telephonyInfo,大家可以忽略這個(gè):

            1

            2

            3

            4

            5

            6

            7

            8

            9CTTelephonyNetworkInfo *telephonyInfo = [CTTelephonyNetworkInfo new];

            NSLog(@Current Radio Access Technology: %@, telephonyInfo.currentRadioAccessTechnology);

            [NSNotificationCenter.defaultCenter addObserverForName:CTRadioAccessTechnologyDidChangeNotification

            object:nil

            queue:nil

            usingBlock:^(NSNotification *note)

            {

            NSLog(@New Radio Access Technology: %@, telephonyInfo.currentRadioAccessTechnology);



            關(guān)鍵詞:

            評(píng)論


            相關(guān)推薦

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

            關(guān)閉