最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS開發(fā)狀態(tài)欄及設(shè)置功能全面詳解

 更新時間:2023年06月12日 14:03:08   作者:山水域  
這篇文章主要為大家介紹了iOS開發(fā)狀態(tài)欄及設(shè)置功能全面詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

正文

在iOS的應用程序中,狀態(tài)欄(StatusBar)是用來展示當前設(shè)備的一些信息,例如電池電量、網(wǎng)絡連接狀態(tài)、時間等等。在開發(fā)過程中,我們可以通過修改狀態(tài)欄來增強用戶體驗,如顯示網(wǎng)絡請求的狀態(tài),顯示音頻播放器的播放進度等等。

下面是在Swift中修改狀態(tài)欄的幾種方式及其代碼實現(xiàn):

1. 設(shè)置狀態(tài)欄樣式(最下面有更詳細的解答):

UIViewController中,我們可以通過設(shè)置preferredStatusBarStyle屬性來設(shè)置狀態(tài)欄樣式。在這個屬性里面,我們可以指定不同的樣式,例如黑底白字、白底黑字等等。

代碼示例:

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent      // 設(shè)置白底黑字樣式
}

2. 隱藏狀態(tài)欄:

UIViewContoller中,我們可以通過設(shè)置prefersStatusBarHidden屬性來隱藏狀態(tài)欄。

代碼示例:

override var prefersStatusBarHidden: Bool {
    return true     // 隱藏狀態(tài)欄
}

3. 設(shè)置狀態(tài)欄背景顏色:

iOS7之后,我們可以實現(xiàn)自定義的狀態(tài)欄背景顏色,去除默認的半透明效果。

代碼示例:

// 設(shè)置狀態(tài)欄背景顏色
if let statusBar = UIApplication.shared.value(forKeyPath: "statusBarWindow.statusBar") as? UIView {
    statusBar.backgroundColor = .red   // 設(shè)置為紅色
}

在Swift中,我們可以通過以下方式來設(shè)置狀態(tài)欄顏色:

1. 在Info.plist文件中設(shè)置

我們可以在Info.plist文件中設(shè)置UIViewControllerBasedStatusBarAppearancefalse,然后在AppDelegate中使用UIApplication.shared.statusBarStyle來全局設(shè)置狀態(tài)欄樣式。

代碼示例:

// AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
    // 設(shè)置狀態(tài)欄樣式
    UIApplication.shared.statusBarStyle = .lightContent
    return true
}
// Info.plist
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>

2. 在UIViewController中設(shè)置

我們可以在每個UIViewController中重寫preferredStatusBarStyle屬性來設(shè)置該頁面的狀態(tài)欄樣式。

代碼示例:

override var preferredStatusBarStyle: UIStatusBarStyle {
    return .lightContent
}

3. 在UIApplication中設(shè)置

在較舊的iOS版本中,在UIApplication中設(shè)置狀態(tài)欄樣式可以全局修改整個應用程序的狀態(tài)欄樣式。

代碼示例:

// 設(shè)置全局狀態(tài)欄樣式
UIApplication.shared.statusBarStyle = .lightContent

4. 有導航欄的情況

如果我們使用了導航控制器 UINavigationController, 且它的 navigationBar 沒有被隱藏,那么會發(fā)現(xiàn)即使重寫 preferredStatusBarStyle方法,這個方法也不會被調(diào)用。因為此時狀態(tài)欄的樣式是根據(jù)導航欄的樣式來自動變換的。

代碼示例:

class QQBaseNavVC: UINavigationController {
    override func viewDidLoad() {
        super.viewDidLoad()
       self.navigationBar.barStyle = .black
        // Do any additional setup after loading the view.
    }
}
import UIKit
   class ViewController: UIViewController {
   // 當前statusBar使用的樣式
   var style: UIStatusBarStyle = .default
   // 重現(xiàn)statusBar相關(guān)方法
   override var preferredStatusBarStyle: UIStatusBarStyle {
   return self.style
   }
   override func viewDidLoad() {
   super.viewDidLoad()
   }
   // 每次點擊按鈕切換一次樣式
   @IBAction func changeBtnStyle(_ sender: Any) {
   if let isHidden = self.navigationController?.isNavigationBarHidden {
   // 切換導航欄顯示或者隱藏
   self.navigationController?.isNavigationBarHidden = !isHidden
   // 更新狀態(tài)欄顏色
   self.style = !isHidden ? .lightContent : .default
}
}
}

以上就是iOS開發(fā)狀態(tài)欄及設(shè)置功能全面詳解的詳細內(nèi)容,更多關(guān)于iOS開發(fā)狀態(tài)欄設(shè)置的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • iOS中searchBar(搜索框)光標初始位置后移

    iOS中searchBar(搜索框)光標初始位置后移

    這篇文章主要介紹了iOS中searchBar(搜索框)光標初始位置后移的關(guān)鍵代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-08-08
  • iOS中的UIStepper數(shù)值加減器用法指南

    iOS中的UIStepper數(shù)值加減器用法指南

    UIStepper可以有許多應用場景,比如在購物應用中制作按鈕對購買商品的數(shù)量進行增或減,下面我們就一起來看看iOS中的UIStepper數(shù)值加減器用法指南
    2016-05-05
  • IOS中對Url進行編碼和解碼示例

    IOS中對Url進行編碼和解碼示例

    本篇文章主要介紹了IOS中對Url進行編碼和解碼示例,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11
  • iOS讀取txt文件出現(xiàn)中文亂碼的解決方法

    iOS讀取txt文件出現(xiàn)中文亂碼的解決方法

    這篇文章主要為大家詳細介紹了iOS讀取txt文件出現(xiàn)中文亂碼的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Swift Self詳解及簡單實例代碼

    Swift Self詳解及簡單實例代碼

    這篇文章主要介紹了Swift Self詳解及簡單實例代碼的相關(guān)資料,這里對self 進行了詳細介紹并附實例代碼,需要的朋友可以參考下
    2016-12-12
  • IOS獲取系統(tǒng)相冊中照片的示例代碼

    IOS獲取系統(tǒng)相冊中照片的示例代碼

    在大家的日常開發(fā)中,經(jīng)常會遇到有的app需要從系統(tǒng)相冊中獲取圖片,如設(shè)置用戶頭像等,下面這篇文章給大家分享這個功能的實現(xiàn),有需要的可以參考借鑒。
    2016-09-09
  • iOS使用UIBezierPath實現(xiàn)ProgressView

    iOS使用UIBezierPath實現(xiàn)ProgressView

    這篇文章主要為大家詳細介紹了iOS使用UIBezierPath實現(xiàn)ProgressView,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 微信小程序 實現(xiàn)listview帶字母滑動

    微信小程序 實現(xiàn)listview帶字母滑動

    這篇文章主要介紹了微信小程序 實現(xiàn)listview帶字母滑動的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • iOS開發(fā)實戰(zhàn)之Label全方位對齊的輕松實現(xiàn)

    iOS開發(fā)實戰(zhàn)之Label全方位對齊的輕松實現(xiàn)

    這篇文章主要給大家介紹了關(guān)于iOS開發(fā)實戰(zhàn)之輕松實現(xiàn)Label全方位對齊的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-10-10
  • iOS開發(fā)第三方鍵盤處理實例代碼

    iOS開發(fā)第三方鍵盤處理實例代碼

    本篇文章主要介紹了iOS開發(fā)第三方鍵盤處理實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

横峰县| 临安市| 中超| 比如县| 广灵县| 沁水县| 安平县| 安平县| 亳州市| 苗栗市| 拉萨市| 武平县| 和龙市| 巴塘县| 台江县| 潜江市| 新乡县| 高尔夫| 丹江口市| 区。| 浦北县| 金堂县| 无棣县| 苍溪县| 滦南县| 信宜市| 渝北区| 都兰县| 静宁县| 神木县| 徐州市| 台安县| 长治市| 仁怀市| 古浪县| 乌恰县| 瑞丽市| 宿州市| 宜兴市| 荔浦县| 大城县|