1 00:00:00,150 --> 00:00:02,400 ログを見ると予報データが正しく 2 00:00:02,400 --> 00:00:06,070 正しいString型配列であることが分かります 3 00:00:06,070 --> 00:00:08,260 それではUIをアップデートしましょう 4 00:00:08,260 --> 00:00:13,050 まずAsyncTaskがどのように データをメインスレッドに戻すかを振り返ります 5 00:00:13,050 --> 00:00:16,390 Ctrl+Oを押すと AsyncTaskの中の 6 00:00:16,390 --> 00:00:18,880 オーバーライド可能な メソッド一覧を見ることができ 7 00:00:18,880 --> 00:00:22,100 クリックするとコードに設定されます 8 00:00:22,290 --> 00:00:25,220 ではAsyncTaskが取得した新しいデータで 9 00:00:25,220 --> 00:00:27,630 ArrayAdapterをアップデートしてください 10 00:00:28,030 --> 00:00:31,090 ヒントは変数ForecastAdapterを グローバル変数にすることです 11 00:00:31,290 --> 00:00:34,500 そうすればFetchWeatherTaskから ForecastAdapterにアクセスできます 12 00:00:34,500 --> 00:00:36,210 静的クラスだとForecastFragmentから 13 00:00:36,210 --> 00:00:40,810 メンバ変数にアクセスできないので 注意してください 14 00:00:41,210 --> 00:00:43,250 ではアプリをコンパイルしてビルドしましょう 15 00:00:43,250 --> 00:00:45,300 それから実行してRefreshボタンを押すと 16 00:00:45,300 --> 00:00:48,620 設定した位置の週間天気予報が表示されます 17 00:00:48,620 --> 00:00:49,650 アプリがうまく動いたら 18 00:00:49,650 --> 00:00:53,300 あとで混乱しないよう詳細ログを削除します 19 00:00:53,500 --> 00:00:58,550 実行中にUnsupportedOperationExceptionが 発生する場合は 20 00:00:58,550 --> 00:01:03,080 疑似データを生成して ArrayAdapterを初期化する際に 21 00:01:03,080 --> 00:01:06,330 配列ではなくList<String>で渡してください 22 00:01:06,330 --> 00:01:10,040 そうすれば このListコレクションに対して clearメソッドやaddメソッドを呼び出せます