Widget作成メモ(3)ーWidgetSmallビューの編集
こんにちは、川上です。
Widget窓に色々と表示させるために、色々とNet湾で参照していくると、追々と解ってきた感じの模様かな。。。
ココの言語エリアは、SwiftUIで、Swift5ですw。
SwiftUIのコーディングや表示動作をみていると、
へー、ホゥー、フーンやハテやナゾが色々出てくるけど、結構、面白そーですよ
そのうち、使っていると、なんとかなるでしょう。
先ずは、Widget窓に、日付と曜日を表示しようとしました。
Dateの年月日時間や曜日等のデータ値を取得はじめですwネ。
この辺は、あちこちで結構使うので、I/Fにしました。
Widgetプロジェクト側に
[New File..] – [Swift]で、CF_Lib5.swiftの作成。
で、その時に、
「MiniClock_WidgetExtension」にチェックしておきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | import UIKit // MARK: - +++ UIKit U/I +++ CFLib_Mgr() class CFLib_Mgr { // MARK: +++ 曜日表示 static func getTodayString() -> String { let weekDays:[String] = ["(日)","(月)","(火)","(水)","(木)","(金)","(土)"] let today = Date() let day_tpl = CF_Lib.convertNSDateToYMDHMS_Weekday(date:today as NSDate) let weedstr = weekDays[day_tpl.weekday] let daystr = String(format: "%d/%d%@", day_tpl.mth,day_tpl.day, weedstr) return daystr } } // MARK: - +++ UIKit U/I +++ CF_Lib() struct CF_Lib { // MARK: +++ Dateの年月日時間値データを取得する static func convertNSDateToYMDHMS_Weekday (date: NSDate) -> (yy:Int,mth:Int,day:Int,hh:Int,min:Int,sec:Int,weekday:Int) { let gcal = NSCalendar(identifier: NSCalendar.Identifier.gregorian)! let flags : NSCalendar.Unit = [NSCalendar.Unit.year ,NSCalendar.Unit.month ,NSCalendar.Unit.day ,NSCalendar.Unit.hour ,NSCalendar.Unit.hour ,NSCalendar.Unit.minute ,NSCalendar.Unit.second ,NSCalendar.Unit.nanosecond ,NSCalendar.Unit.weekday] let dComp = gcal.components(flags, from: date as Date) let lYYY = dComp.year //as! Int let lMM = dComp.month //as! Int let lDD = dComp.day //as! Int let lHH = dComp.hour //as! Int let lMINI = dComp.minute //as! Int let lSEC = dComp.second //as! Int let lweekday = dComp.weekday! - 1 // [ "日", "月", "火", "水", "木", "金", "土"]のindex return (yy:lYYY!,mth:lMM!,day:lDD!,hh:lHH!,min:lMINI!,sec:lSEC!,weekday:lweekday) } } |
で、I/Fができたのでした。
ここから、Widget窓の編集が始まるのです。。
ではでは。