問題タブ [nscalendar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - ローカライズされた暦月の名前のNSArrayをプログラムで構築するにはどうすればよいですか?
iPhoneアプリをローカライズ/国際化する過程にあり、質問があります。私のアプリの1つの場所に、1年の12か月のリストを表示します。現在ローカライズされていない状態であるため、1月から12月までの月をNSArrayにハードコードします。NSCalendarを使用して、ユーザーのロケールに基づいてこの月のNSArrayをプログラムで構築したいと思います。これを行うための最良の方法は何ですか?
objective-c - 特定の時刻のNSDateオブジェクトを、同じ時刻と現在の日付のオブジェクトに変換する最も効率的な方法
私は現在、学校のスケジュールを処理するスケジューリングアプリケーションを作成しています。各スケジュールには、開始時刻と終了時刻の両方を含む期間オブジェクトの配列があります。現在、これらの時刻はNSDateオブジェクトとして保存されています。ここでは、時刻のみが実際に関連しており、各NSDateオブジェクトには、アプリケーションにとってほとんど重要ではない任意の日付が関連付けられています(UIDatePickerが割り当てたものは何でもですが、TimePickerModeのみを使用します) )。私はこれらの日付で多くのことをします。まず、NSDateFormatterを使用して、UITableViewの各期間の時間の文字列表現を出力します。次に、[NSDate date]によって取得された現在の時刻を開始時刻と終了時刻と比較することにより、その日の現在の期間を見つけようとします。しかし、私はこれを行うための最良の方法を決定するのに苦労しています。
現在、NSDateFormatterを使用して開始時刻と終了時刻を文字列に変換してから、今日の日付と同じ日付の日付に戻しています。その後、-(NSComparisonResult)compareを使用して日付の比較を行うことができます。開始日と終了日を現在の日付と比較します。しかし、これは非常に非効率的であると私は見ることができました。
他の可能な方法は、各NSDateをNSDateComponentsに変換してから、NSCalendarを使用して、現在の日付と同じ元の時刻を持つNSDateに変換し直すことです。
または、別のアプローチを取り、NSDateストレージ手法を完全に廃止することもできます。代わりに、各開始時刻と終了時刻をNSDateComponentsとして保存できます。その後、UITableViewの時刻のフォーマットされたバージョンを出力するのに十分簡単で、[NSDate date]によって取得された日付をNSDateComponentsに変換して、論理に使用できます。現在の期間を取得するための比較。
これについては3つまたは4つの異なる方法がありますが、実際に話し合った後、さまざまなタイプの日付オブジェクト間で実行時の変換が最小限で済むため、最後に説明した方法が最も効率的であると確信しています。私は他の人の意見を探しています。
iphone - ユーザーが選択したNSDateが数年前に発生したかどうかを確認するにはどうすればよいですか?
私のアプリケーションでは、ユーザーが18歳になったかどうかを確認する必要があります。私は彼にUIDatePickerViewを提供し、彼は彼の誕生日を選択します。NSDateフィールドに保存します。彼の誕生日からすでに18年が経過しているかどうかを確認するにはどうすればよいですか?
objective-c - [NSCalendarautoupdatingCurrentCalendar]を使用する場合の例
+ autoupdatingCurrentCalendar
の代わりに使用される例を探してい+ currentCalendar
ます。より具体的には、カレンダーが変更されたときにカレンダーに基づく値が自動的に変更される場合。これまたはそのようなもののバインディングが必要ですか?
ドキュメントの状態:
カレンダーまたは関連情報に基づいて値をキャッシュする場合、もちろん、それらのキャッシュはカレンダーオブジェクトの更新によって自動的に更新されないことに注意してください。
前もって感謝します
iphone - iPhone NSCalendar - 米国以外のユーザー向けに描画されたカレンダーが正しくない
他の誰かのコードに取り組み、非常に多くの異なる反復を試みた後、カレンダーの月ビューの日付で何が間違っているのか理解できません。calendar.app のような月表示方式でカレンダーを表示しようとしていますが、残念ながらオーストラリアや英国などの国の一部のユーザーから、日付と日付の位置合わせが正しくないと報告されています。たとえば、オーストラリアでは 3 月 17 日が金曜日として表示されます。どんな助けでも大歓迎です!
私が使用しているコードサンプルは次のとおりです。
そして、これはカレンダーにどのように入力するかです:
そして最後にviewdidload:
objective-c - 既存の NSDate の時刻を設定するにはどうすればよいですか?
NSDate
既存の の時間を設定するにはどうすればよいですか?
つまり、日付 (現在の日付/時刻など) がありますが、これを特定の時刻 (午前 11 時 23 分など) に設定したいとします。Objective Cでこれを行う最も簡単な方法は何ですか?
私は、 、NSCalendar
などのメソッドを見て見ていますが、これらは私がここで必要としているものを完全に満たしていないようです。例えば:dateByAddingComponents:toDate:options:
dateFromComponents:
dateFromComponents:
- これが機能するには、すべてのコンポーネントを解決する必要がありますが、これはやり過ぎのように思えますdateByAddingComponents:toDate:options:
- 私の場合は追加したくありませんが、時間を「設定」します。
ios - このコード例で NSCalendar オブジェクトを解放する必要はありますか?
このコード例で NSCalendar オブジェクトを解放する必要はありますか? それとも、コードの最後の行が「グレゴリアン」変数から派生した newDate を返すという事実に影響しますか?
iphone - NSCalendar コンポーネントが時間を考慮していない
NSDate が UTC/GMT であることはわかっています。つまり、タイムゾーン情報は関連付けられていません。
タイムゾーンを考慮に入れる NSCalendar や NSTimeZone 、NSDateComponents などの高レベルのクラスがあります。
それに基づいて、次のコードを使用して、2 つの日付間の日数の差を計算しています。しかし、私が得ている結果は、時間を完全に無視して計算が行われたようです。私が何か間違ったことをしているのか、それともこれが何らかの理由で設計されているのか疑問に思っています.
コードとデータは次のとおりです。
デバッグ出力:
タイムゾーンは太平洋標準時で、上記の日付は PST に変換されたものです。
したがって、それらの間に 2 日ではなく 4 日あると予想します (31 日、1 日、2 日、および 3 日)。
時間が無視される理由は、計算に時間を追加すると 2 日と 12 時間が得られるからです。
私は何か間違ったことをしていますか、それともこれがどのように機能するように設計されていますか?
ありがとう、ヴァンス
iphone - 2つの時間の間のObjective-Cの中点
時間として「h:mma」としてフォーマットされた2つのNSDateがあります(つまり、6:00AMと8:00PM)。
私はそれらの2つの時間の中間点が何時であるかを見つけようとしています。
上記の例では、午前6時から午後8時までの中間点は午後1時です。
しかし、iPhoneSDKのObjective-Cでこれを行う方法がわかりません。
ヘルプや提案、コードをいただければ幸いです。
objective-c - NSCalendar dateWithComponentsが間違った日付を与える
dateComponents で日付を詳しく説明する必要があります。
calendar には正しい TimeZone があり、Date のすべてのコンポーネントは権利です。さて、私が何をしても、itemDate オブジェクトにはグリニッジ タイムゾーン (+0000) があります。この問題を解決するにはどうすればよいですか?