2011-08-11 14 views
8

私はCalendarViewを実装しようとしていますが、画面に表示するには不合理な時間(約10秒)がかかり、月と曜日のヘッダーのみが読み込まれ、カレンダーのコンテンツは表示されません。Android 3.0 CalendarView

このコードはvideoと同じですが、同じ結果は見られません。私はそれをロードするために、画面に同じ時間を取り、同様に正しく表示することができなかった活動に埋め込むしようとしたとき

CalendarView calendarView = new CalendarView(this); dialog.setContentView(calendarView);

をしかし私は、ダイアログでそれを起動しようとしています。

+3

あなたのアプリをトレースしようとしましたか?詳しくは、http://android-developers.blogspot.com/2010/10/traceview-war-story.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/hsDu+(Android+Developers+Blog)を参照してください。起こっていることを正確に追跡する。 – Jack

答えて

17

トレースはGregorianCalendarが何千回も呼び出されていることを明らかにしました。 カレンダーの日が表示されていないと、表示されている日以外のすべての日付を計算しようとします。

ヘッダー情報のみを表示するCalendarViewの問題は、layout_widthlayout_heightを明示的に設定することで解決されました。 wrap_contentまたはmatch_parentは、カレンダーの内容を表示するために正しく機能しませんでした。

+1

厳密に言えば、 'layout_width'を' match_parent'とすることができます。高さだけを明示的に設定する必要があります。 – SaltyNuts

関連する問題