0

アプリケーションで customListAdapter ( BaseAdapter を拡張) を使用しています。ListFragment 内でこのアダプターを使用しました。

プロトタイプ作成のために、文字列配列にいくつかの値をハードコーディングし、それらを使用してリストを設定しました。getView をオーバーライドし、膨張後にビューを返しています。

ここで、Web サービス呼び出しからデータを取得する必要があります。これは、AsyncTask 内で実行する予定です。

これを行うための推奨される方法は何ですか?

現在のコード (疑似)

public class customListAdapter extends BaseAdapter {

  @Override
  public View getView(int position, View MyconvertView, ViewGroup parent) {

    // Inflating view 
    // Other view operations
    return MyconvertView;
  }

  class SomeTask extends AsyncTask<params,progress ,Result > {

  @Override
  protected View doInBackground(... params) {
  }


  @Override
        protected void onPostExecute(View result) {

        }
  }
 }
}

変更が必要です:

オプション1:

  @Override
  public View getView(int position, View MyconvertView, ViewGroup parent) {

    // Inflating view 
    // Other view operations

    return new SomeTask.execute(); // should return the view , the onPostExecute of SomeTask should return this. 
  }

オプション 2:

提案してください。

4

1 に答える 1

1

Async Task の PostExecute メソッドで、メソッドを呼び出す

list.setAdapter(data);

したがって、すべてのデータを取得すると、リストに設定されます..

于 2013-08-20T11:52:58.210 に答える