CodeNameOneでカレンダーコンポーネントをカスタマイズしようとしています。codenameoneカレンダーコンポーネントのライフサイクルは何ですか?
ただし、コンポーネントのライフサイクルのイベントやメソッドについては明確ではありません。文書がどこかにあるか、ガイドラインが参考になります。
CodeNameOneでカレンダーコンポーネントをカスタマイズしようとしています。codenameoneカレンダーコンポーネントのライフサイクルは何ですか?
ただし、コンポーネントのライフサイクルのイベントやメソッドについては明確ではありません。文書がどこかにあるか、ガイドラインが参考になります。
が必要な外観を持っているデザイナーでCalendarDayのスタイルを設定する必要がありますフォント、パディング等
CalendarTitle UIIDは、色を表現するためにブルーでスタイリングすることができます。
これを行うには、theme.resをダブルクリックし、「テーマ」を選択し、「追加」を押して、CalendarDayまたはCalendarTitleを入力します。目的の外観を生成するために、必要に応じて派生またはオーバーライドを続行します。詳細については、これを参照してください:https://www.codenameone.com/how-do-i---create-a-simple-theme.html
タイトルをローカライズするには、ここで説明したように、独自のローカリゼーションバンドルを定義します。https://www.codenameone.com/how-do-i---localizetranslate-my-application-apply-i18nl10n-internationalizationlocalization-to-my-app.html
コンポーネントは、それらがごみを収集しているときに、(例えばButton myBtn = new Button("Click me")
)彼らがインスタンス化された時点から、住んでいます。ガベージコレクションは、コンポーネントへの参照がなくなったときに発生します。
主なライフサイクルは、コンポーネントがForm
に追加または削除されたときです。
コンポーネントがフォームに追加されると、コンポーネントのinitComponent()
メソッドが呼び出されます。 deinitialize()
メソッドがフォームから削除されたときに呼び出されます。
カスタムコンポーネントでこれらのイベントを通知する場合は、これらのメソッドをオーバーライドできます。
応答のために@steveに感謝します。 'initComponent()'と 'deinitialize()'とは別のライフサイクルメソッドはありますか? 'constructor'でいくつかのデフォルト値を初期化したいとし、ある時点でデフォルト値にリセットしたいとします。 「データ変更」や「レンダリング」などの定期的な方法でライフサイクルメソッドが呼び出される方法があります。 ありがとうございます。 – saumya
[Component javadoc page](https://www.codenameone.com)を参照してください。 /javadoc/com/codename1/ui/Component.html)、すべてのメソッドを表示します。プラグインする場所がいくつかあります。 'paint()'メソッドがコンポーネントを描画するために呼び出され、 'calcPreferredSize()'が呼び出されて、コンテナにレイアウトするときにコンポーネントの優先サイズが取得されます。 「保護されている」とマークされたメソッドに注意を払うのは、一般的にワークフローにフックするためにオーバーライドすることが意図されているメソッドです。また、まだお持ちでない場合は、[開発者ガイドの基本セクション](https://www.codenameone.com/manual/basics.html) –
@steveありがとうございます – saumya
お返事ありがとうございます@GRV_Droid。 CodeNameOneカスタムコンポーネント作成のライフサイクルイベントまたはメソッドを知っていますか。特定のライフ・サイクル・イベントにメソッドをバインドする方法に関するドキュメントはないようです。 – saumya