在ParseQueryAdapter类中显示MainActivity中的Toast? “无法对非静态方法进行静态引用”

时间:2014-03-27 20:18:46

标签: java android

每当返回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);



}

0 个答案:

没有答案