0

私は本当に単純なことをしようとしていますが、どういうわけか方向性がわかりません。これが私が達成しようとしていることです。

私の GridView アクティビティでは、SD カードの場所から最大 10 枚の写真を読み込んでいます。次に、メニューオプション「もっと読み込む」を使用して、別のSDカードの場所から最大50枚の写真を読み込み、GridViewを更新してすべての写真を表示したい(新しいアイテムでGridViewアクティビティを再度呼び出したくない)

外部スレッドまたはメニュー トリガー オプションから GridView (メイン UI スレッドで定義されている) を更新することは、私がやろうとしていることです。任意の提案をいただければ幸いです。

4

3 に答える 3

1

唯一かつ最も適切なオプションは、メニューで Refresh オプションを定義しAsyncTask、バックグラウンド操作を処理する をトリガーし、その後、結果で Ui を更新することです。

詳細については、 AsyncTaskを確認してください。

http://developer.android.com/resources/articles/painless-threading.html

于 2011-11-14T19:36:15.750 に答える
0

別のスレッドからrunOnUiThread()を呼び出すことができます:

runOnUiThread(new Runnable() { public void run() {
    // update your GridView here...
}});
于 2011-11-14T20:49:44.913 に答える
0

UI スレッドの外からGridViewにアクセスすることはできません。

ASynchTaskを使用していますか? その場合は、をオーバーライドしonPostExecute()てイベントをスローします。

于 2011-11-14T19:35:12.097 に答える