SwiftUI最新教程實戰項目之如何獲取每月和月份的名稱

實戰需求

  • 獲取月份
  • 獲取月份的名稱

本文價值與收穫

看完本文後,您將可以做出下面的界面

Jietu20200501-235631@2x.jpg

Jietu20200501-235655.gif


基礎知識(高手能夠略過此節,後面更精彩)

日期顯示與處理是每一個SwiftUI開發者都應該掌握的技能,其中Date、Calendar和DateFormatter是日期處理最經常使用的三個組件。下面讓咱們來看看他們三個都有什麼用:
  • Date 獲取時間的類型

Date類型主要用於獲取日期與時間,自己提供用於比較日期、計算兩個日期之間的時間間隔以及從相對於另外一個日期建立新日期的方法。另外Date和與 DateFormatter 實例結合使用,以建立日期和時間的本地化表示形式,並與Calendar一塊兒建立執行日曆算術的日曆值。ide

  • Calendar 處理日期類型

Calendar類型封裝了有關日期、月份、天相關計算函數,咱們經過Calendar能夠實現獲取Date日期,並根據日期進行運算。函數

  • DateFormatter

DateFormatter用於將Date轉爲文本表達方式的對象。spa

代碼

import SwiftUI

struct ContentView: View {
    @State var monthName = ""
    var body: some View {
        VStack {
            VStack{
            Text("如何獲取每一個月和月份的名稱")
                .frame(maxWidth:.infinity)
                .padding()
                .background(Color.orange)
                .padding()
                HStack{
                    Text("本月月份:")
                    Text(self.monthName)
                }
                Button("獲取月份名稱"){
                    self.monthName = Date().getMonthName()
                }
            }
          
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}


extension Date {
    func getMonthName() -> String {
        let date = self

        let month = Calendar.current.component(.month, from: date)

        let months = ["January", "February", "March", "April", "May", "June",
                      "July", "August", "September", "October", "November", "December"]

        let monthName = months[month-1]

       return monthName
    }
}

技術交流

QQ:3365059189
SwiftUI技術交流QQ羣:5186964703d

https://www.jianshu.com/c/7b3...code

相關文章
相關標籤/搜索