【发布时间】:2015-01-19 19:27:02
【问题描述】:
我试图从另一个名为“MainActivity”的类中调用“AsyncTask”类,但“AsyncTask”类位于名为“SiteAdapter”的类中。我试图通过参考,但它不起作用。怎么会这样?
主要活动:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i("StackSites", "OnCreate()");
setContentView(R.layout.activity_main);
//Call the class AsyncTask
new GetAddressTask(this).execute(); // <----ERROR - GetAddressTask cannot be resolved to a type
}
}
SitesAdapter 类中的 AsyncTask:
public class SitesAdapter extends ArrayAdapter<StackSite> {
...//PROCESS
public class GetAddressTask extends AsyncTask<String, Void, String> {
Context mContext;
public GetAddressTask(Context context) {
super();
mContext = context;
}
//Pass a reference to MainActivity
private MainActivity mainActivity; // <--- WARNING - The value of the field SitesAdapter.GetAddressTask.mainActivity is not used
public GetAddressTask(MainActivity mainActivity)
{
this.mainActivity = mainActivity;
}
@Override
protected String doInBackground(String... arg0) {
...
}
@Override
protected void onPostExecute(String result) {
...
}
}
}
【问题讨论】: