每当返回ParseQueryAdapter的数据时,我都试图在Activity A上显示一个toast。我可以很容易地设置一个textview,如下面的Activity所示,但发送一个toast给了我上下文问题。我该如何解决这个问题?我尝试在另一个方法中制作toast,并从updateUI调用该方法,但是它只是希望我将该方法设置为static,返回相同的错误。
“无法对非静态方法进行静态引用 来自ContextWrapper“
类型的getApplicationContext()
主要活动方法
public static void updateUI(int number)
{
String string1 = Integer.toString(number);
textView1.setText(string1);
Toast.makeText(getApplicationContext(), number, Toast.LENGTH_LONG).show();
}
ParseQueryAdapter
public class ParseAdapter extends ParseQueryAdapter<Book> {
public ParseAdapter(Context context) {
super(context, new ParseQueryAdapter.QueryFactory<Book>() {
public ParseQuery<Book> create() {
ParseQuery query = new ParseQuery("Books");
query.orderByDescending("createdAt");
try {
int books = query.count();
MainActivity.updateUI(books);
} catch (ParseException e) {
e.printStackTrace();
}
return query;
}
});
}
@Override
public View getItemView(Sale sale, View v, ViewGroup parent) {
if (v == null) {
v = View.inflate(getContext(), R.layout.listview_a, null);
}
super.getItemView(sale, v, parent);
}