2016-10-17 10 views
-2

NSDateを「HH:mm」の時間文字列に変換しようとしています。過去には、NSDateFormatterのstringFromDateメソッドを使用できましたが、このメソッドはDate(NOT NSDate)オブジェクトのみを受け入れるようです。これどうやってするの?私は日付としてNSDateをキャストできる答えを受け入れるか、またはNSDateをフォーマットされた時間文字列に直接変換できるようにします。NSDateを時刻文字列に変換する

マイ鋳造の試み( "_time" はNSDateが含まれており、_dateは日付が含まれています。これらはコンパイルされません。):

let dateformatter = DateFormatter() 
dateformatter.dateFormat = "HH:MM" 
return dateformatter.string(from: (Date)_time) 

そして:

let myNSDate = NSDate(_date) 
+4

多くのオブジェクトクラスがSwift 3で名前が変更され、接頭辞が失われました。 NSDateはDateになりました。 – Paulw11

+0

あなたはそれを試してみることができますか?だから私はちょうどあなたが望むものを理解することができます –

+0

なぜ、私は日付(時間から:myNSDate)、または(日付)myNSDateできないのですか?私は、DateとNSDateが2つの別個のクラスであり、キャスティングが問題であると確信しています。 – dylanthelion

答えて

4

私は受け入れますNSDateを日付としてキャストできる答え。

セイas Date

+0

ハハハハ。私は馬鹿だと感じる。なぜ(MyType)MyObjectの通常のキャスト構文が機能しないのか、これは何ですか? – dylanthelion

+0

@dylanthelion、それは 'C'ではないので、' Swift'型キャスティングは常に 'as 'で作られました。 – user28434

関連する問題