在片段中使用列表适配器 Activity

Using List Adapter in a Fragment Activity

我有一个从 FragmentActivity 延伸的 activity class,因为我在其中使用 DialogFragment

早些时候这个 class 是从 ListActivity 扩展的,当 DialogFragment 的要求到达方法 [=17] 时没有问题 but when I extended it from FragmentActivity =] 变得不可用。

我想知道如何在从 FragmentActivity

扩展我的 class 时使用方法 setListAdapter
public class Main extends FragmentActivity{
            …
            …
    private class fetchStudentInfo extends AsyncTask<String, Void, List<mStudentInfo>> {
        @Override
        protected List<mStudentInfo> doInBackground(String... urls) {
            …
        }

        public void onPostExecute(List<mStudentInfo> StudentInfoCollection) {
            setListAdapter(new StudentInfoAdapter((Activity) mainAppContext, StudentInfoCollection));
        }
    }
    }

要设置 setAdapter,您需要像这样的 listView 参考,

public class Main extends FragmentActivity {

  private ListView mListView; 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.your_layout_id);
    mListView = (ListView)findViewById(R.id.list);
 }

 private class fetchStudentInfo extends AsyncTask<String, Void, List<mStudentInfo>> {
        @Override
        protected List<mStudentInfo> doInBackground(String... urls) {
            …
        }

        public void onPostExecute(List<mStudentInfo> StudentInfoCollection) {
            mListView.setListAdapter(new StudentInfoAdapter((Activity) mainAppContext, StudentInfoCollection));
        }
    }

}

而且你还需要带有 listview 的布局文件,其中的 id R.id.list.