GridView に画像をロードするときにスレッドを使う場合・・・はじめにダミー画像を入れておいて、裏のスレッドで画像をロードして・・・そのあとどうするのか?
View#invalidate() を使うのかと思ったがそうではなかった。
BaseAdapter#notifyDataSetChanged() を呼べばGridViewの表示を更新してくれる。つまり再度、BaseAdapter#getView() が呼ばれる。
でもこの notifyDataSetChanged は GUIのスレッドから呼ばないと反応しないので注意。 
guiThread.post(new Runnable(){
  @Override
  public void run() { notifyDataSetChanged(); }
});
※guiThreadは Handlerのインスタンス。
この辺は、javax.swing.JTable のモデル更新と同じ発想でコーディングできそう。
 
0 件のコメント:
コメントを投稿