将 asynctask 值传递给 mainactivity 时出现上下文错误
context error while passing asynctask value to mainactivity
在我的主 activity 中,如果我应用此代码,我会收到错误 gridviewadapter() cannot be applied,
这是上下文中的问题。
GridViewAdapter adapter = new GridViewAdapter(this, R.layout.grid_item_layout, result);
如果我这样应用它:
public MainActivity (Context context) {
mContext = context;
}
GridViewAdapter adapter = new GridViewAdapter(mContext, R.layout.grid_item_layout, result);
我在 logcat
中遇到了这个错误
java.lang.InstantiationException: can't instantiate class com.justedhak.www.i.MainActivity; no empty constructor
我正在尝试将 asynctask arraylist 值传递给 mainactivity ..如何解决这个问题?
删除这个构造函数
public MainActivity (Context context) {
mContext = context;
}
将此添加到 MainActivity
的 onCreate()
内
mContext = this;
GridViewAdapter 适配器 = new GridViewAdapter(this, R.layout.grid_item_layout, Listitem);
不应为 MainActivity
class 使用构造函数。
请使用:
GridViewAdapter adapter = new GridViewAdapter(getApplicationContext(), R.layout.grid_item_layout, result);
而不是:
GridViewAdapter adapter = new GridViewAdapter(this, R.layout.grid_item_layout, result);
尝试
GridViewAdapter adapter = new GridViewAdapter(MainActivity.this, R.layout.grid_item_layout, result);
如果要传递mContext
变量,像下面这样初始化这个变量:
public class MainActivity extends AppCompatActivity {
private final Context mContext = this;
... // other codes such as onCreate...
}
希望对您有所帮助!
在我的主 activity 中,如果我应用此代码,我会收到错误 gridviewadapter() cannot be applied,
这是上下文中的问题。
GridViewAdapter adapter = new GridViewAdapter(this, R.layout.grid_item_layout, result);
如果我这样应用它:
public MainActivity (Context context) {
mContext = context;
}
GridViewAdapter adapter = new GridViewAdapter(mContext, R.layout.grid_item_layout, result);
我在 logcat
中遇到了这个错误java.lang.InstantiationException: can't instantiate class com.justedhak.www.i.MainActivity; no empty constructor
我正在尝试将 asynctask arraylist 值传递给 mainactivity ..如何解决这个问题?
删除这个构造函数
public MainActivity (Context context) {
mContext = context;
}
将此添加到 MainActivity
onCreate()
内
mContext = this;
GridViewAdapter 适配器 = new GridViewAdapter(this, R.layout.grid_item_layout, Listitem);
不应为 MainActivity
class 使用构造函数。
请使用:
GridViewAdapter adapter = new GridViewAdapter(getApplicationContext(), R.layout.grid_item_layout, result);
而不是:
GridViewAdapter adapter = new GridViewAdapter(this, R.layout.grid_item_layout, result);
尝试
GridViewAdapter adapter = new GridViewAdapter(MainActivity.this, R.layout.grid_item_layout, result);
如果要传递mContext
变量,像下面这样初始化这个变量:
public class MainActivity extends AppCompatActivity {
private final Context mContext = this;
... // other codes such as onCreate...
}
希望对您有所帮助!