新しいNSCalendarカレンダーを作成します
-
20-09-2019 - |
質問
私はグレゴリオ暦とユリウス暦の間で変換することができるようにしたい(注:ない「ユリウス日」)iPhone上NSCalendarを使用します。どのように私はユリウス暦を使用するNSCalendarをサブクラス化することができますか?私は、1582年または1752または任意の年のためによろしくせずにこれを行うにはしたくます。
解決
あなたは確かにそれをやってみることができますが、私はNSCalendar
はサブクラスにトリッキーであると思われるものの。それは、物事を複雑にフリーダイヤルのブリッジ、です。物事を複雑にNSLocale、と絡めています。それはむしろ、物事を複雑にする、サブクラス化されているよりも識別子で初期化されます。そして...
あなたは、既存のアーキテクチャにプラグインするために、サブクラスを必要ですか?そうでない場合、それはおそらく同様のインタフェースを持って最初からオブジェクトを作成するのが最も簡単でしょう。あなたはあなたのための仕事のほとんどを行うためにNSGregorianCalendar
を使用して、ちょうど日付コンポーネントを計算する前に必要な日数日付を相殺することができるかもしれません。あなたは1700年、1800年および1900のための特別なロジックが必要になります(もちろん2100などの)NSGregorianCalendar
はさせませんので、あなたはそれらの年でうるう日の日付コンポーネントを作成しますが、それはおそらくまだすべての日付コンポーネントを行うよりも簡単です手で計算ます。
興味があるだけなカレンダーの目標はどのようになるか?
所属していません StackOverflow