欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS狀態(tài)欄的顯示與隱藏的示例代碼

 更新時間:2018年07月21日 09:59:44   作者:Peter0065  
這篇文章主要介紹了iOS狀態(tài)欄的顯示與隱藏的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

今天設計師跑來問iOS狀態(tài)欄的問題,由于之前沒有整理,只能“我確認下給你回復”,確認得有點久,略尷尬。。。好記性不如爛筆頭,希望能養(yǎng)成整理做筆記的好習慣。那么,閑話少說, 讓我們進入正題。

我們使用xcode新建一個 iOS工程 ,默認情況下狀態(tài)欄是顯示的。

 

隱藏某個控制器的狀態(tài)欄

最簡單地隱藏方法就是使用下面這段代碼:

- (BOOL)prefersStatusBarHidden {
  returnYES;
}

全局隱藏狀態(tài)欄

上面代碼確實隱藏了對應控制器的狀態(tài)欄,但是多數(shù)情況下我們的項目里面有很多控制器,如此一個個設置就略顯蛋疼,我們可以進行全局設置。注釋掉上面代碼,在 AppdelegatedidFinishLaunchingWithOptions 里面添加如下代碼,并運行。

[[UIApplicationsharedApplication] setStatusBarHidden:YES];

結果有點尷尬,狀態(tài)欄還在。。打開 info.plist 找到參數(shù)

View controller-based status bar appearance 。

顧名思義,該參數(shù)決定我們項目狀態(tài)欄的顯隱藏是否以各控制器的設置為準(各自為政或統(tǒng)一管理)。將其設置為NO,再次運行。嗯,這次是我們想要的結果了。這時候如果注釋掉 [[UIApplicationsharedApplication] setStatusBarHidden:YES]; 回到最初的 prefersStatusBarHidden 方案,你會發(fā)現(xiàn)狀態(tài)欄隱藏無效了,因為這個時候我們項目的狀態(tài)欄服從統(tǒng)一管理,具體控制器的配置對其無效。

隱藏啟動頁狀態(tài)欄

眼尖的同學可能會發(fā)現(xiàn)在我們設置了 [[UIApplication sharedApplication] setStatusBarHidden:YES]View controller-based status bar appearance -> NO 之后app展示啟動頁的過程中狀態(tài)欄仍然顯示著。額。。。其實也對,因為我們在 didFinishLaunchingWithOptions 才去設置隱藏的嘛。那么如何隱藏啟動過程的狀態(tài)欄呢?再次打開 info.plist ,這次我們找到 Status bar is initially hidden 再次顧名思義。。。你懂的,將其設置為YES,然后運行,Bingo! 狀態(tài)欄見鬼去吧。�在沒有進行對應設置的前提下,啟動頁展示過程中狀態(tài)欄的顯隱和啟動后狀態(tài)欄的顯隱是相對獨立的。關于啟動后狀態(tài)欄的顯隱的設置參照上面:point_up_2:兩點哈。默認情況下,若沒有進行任何代碼設置,在 View controller-based status bar appearance -> YES時,啟動后的狀態(tài)欄默認顯示,否則將跟隨 Status bar is initially hidden 狀態(tài)。

全局隱藏情境下的個別展示

那么,問題來了,如果我們通過全局設置隱藏了狀態(tài)欄,而項目中又有個別一兩個控制偏偏器要秀一下狀態(tài)欄這怎么搞?

這種情況下就需要“宏觀調(diào)控”了,“全局”的坑還得“全局”來填,我們可以在對應要隱藏的控制器里面的 viewWillAppear 方法內(nèi)設置 [[UIApplicationsharedApplication] setStatusBarHidden:YES] ,當然為了不影響我們其他的控制器狀態(tài)欄展示,應該在 viewWillDisappear 內(nèi)將其置為進入前的狀態(tài) [[UIApplicationsharedApplication] setStatusBarHidden:<#before status#>] ;

總結:

View controller-based status bar appearance 控制App狀態(tài)欄顯隱接受全局配置(NO)或者各控制器各自配置(YES)。 [[UIApplicationsharedApplication]setStatusBarHidden:hidden] ,必須在 View controller-based status bar appearance == NO 條件下才能生效。相應的 prefersStatusBarHidden 為局部配置項,控制對應控制器狀態(tài)欄顯隱,必須在 View controller-based status bar appearance == YES 才生效。 設置 Status bar is initially hidden -> YES 可以隱藏啟動頁展示過程的狀態(tài)欄。

demo

今天就到這吧,趕緊跟設計師交差。有什么錯誤和缺漏歡迎指正,補充。( _ )/

PS: 感謝哇丶啦咔咔的糾正哈,文中相應的錯誤與不當描述已經(jīng)更正,啟動頁展示過程中狀態(tài)欄的顯隱是相對獨立的,主要取決于 Status bar is initially hidden 的設置。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • IOS應用內(nèi)跳轉(zhuǎn)系統(tǒng)設置相關界面的方法

    IOS應用內(nèi)跳轉(zhuǎn)系統(tǒng)設置相關界面的方法

    在iOS開發(fā)中,有時會有跳轉(zhuǎn)系統(tǒng)設置界面的需求,例如提示用戶打開藍牙或者WIFI,提醒用戶打開推送或者位置權限等,接下來通過本文給大家介紹IOS應用內(nèi)跳轉(zhuǎn)系統(tǒng)設置相關界面的方法,喜歡的朋友參考下
    2016-02-02
  • Objective-C的緩存框架EGOCache在iOS App開發(fā)中的使用

    Objective-C的緩存框架EGOCache在iOS App開發(fā)中的使用

    這篇文章主要介紹了Objective-C的緩存框架EGOCache在iOS App開發(fā)中的使用,重點講解了EGOCache對緩存過期時間的檢測及處理,需要的朋友可以參考下
    2016-05-05
  • Objective-C?入門篇(推薦)

    Objective-C?入門篇(推薦)

    由C語言和Smalltalk擴展出來的,是C語言的超集,最大的區(qū)別是OC是面向?qū)ο蟮模浠鹦俏膶懛▽τ谥皬氖翵ava開發(fā)的同學頗感蛋疼,OC最大特點之一是使用消息結構而不是函數(shù)調(diào)用
    2021-11-11
  • Xcode中iOS應用開發(fā)的一般項目目錄結構和流程簡介

    Xcode中iOS應用開發(fā)的一般項目目錄結構和流程簡介

    這篇文章主要介紹了Xcode中iOS應用開發(fā)的一般項目目錄結構和流程簡介,包括項目所需的一些平臺路徑如模擬器路徑等的介紹,需要的朋友可以參考下
    2016-02-02
  • iOS的UI開發(fā)中Modal的使用與主流應用UI結構介紹

    iOS的UI開發(fā)中Modal的使用與主流應用UI結構介紹

    這篇文章主要介紹了iOS的UI開發(fā)中Modal的使用與主流應用UI結構,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下
    2015-12-12
  • iOS閱讀器與直播的控件重疊滑動交互詳解

    iOS閱讀器與直播的控件重疊滑動交互詳解

    這篇文章主要介紹了iOS閱讀器與直播的控件發(fā)生重疊時滑動交互受到影響的問題,開發(fā)中某個控件出現(xiàn)在其它控件上方是和你常見的情況,但是如果影響到正常的交互這就會成為大問題,下面我們來了解一下
    2022-08-08
  • iOS仿小紅書呼吸燈動畫(核心動畫和定時器)兩種方式實現(xiàn)

    iOS仿小紅書呼吸燈動畫(核心動畫和定時器)兩種方式實現(xiàn)

    本篇文章主要介紹了iOS仿小紅書呼吸燈動畫(核心動畫和定時器)兩種方式實現(xiàn),非常具有實用價值,需要的朋友可以參考下
    2017-04-04
  • iOS微信第三方登錄實例

    iOS微信第三方登錄實例

    這篇文章主要為大家詳細介紹了iOS微信第三方登錄實現(xiàn)過程,一步一步告訴大家iOS微信實現(xiàn)第三方登錄的方法,感興趣的小伙伴們可以參考一下
    2016-12-12
  • iOS中UIScrollerView的用法及基于AotoLayout的控件懸停

    iOS中UIScrollerView的用法及基于AotoLayout的控件懸停

    這篇文章主要介紹了iOS中UIScrollerView的用法及基于AotoLayout的控件懸停,文中對于UIScrollerView的方法及屬性介紹地非常詳細,十分推薦,示例代碼為Objective-C,需要的朋友可以參考下
    2016-03-03
  • Flutter?模型動態(tài)化賦值研究分析

    Flutter?模型動態(tài)化賦值研究分析

    這篇文章主要為大家介紹了Flutter?模型動態(tài)化賦值研究分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03

最新評論