【问题标题】:How to call new JSON AsynTask() in the Adapter's getView() on CheckBox click?如何在 CheckBox 单击时在 Adapter getView() 中调用新的 JSON AsyncTask()?
【发布时间】:2015-02-22 15:05:40
【问题描述】:

我知道 JSON 解析。我在同一个Activity 中有一个ListViewGridView。我的ListView 有复选框。所以我得到了它在适配器类中的点击。因此,当我选中该复选框时,将调用一个新的 JSON,并且数据将设置在 GridView 中。但是当我试图在setOnCheckedChangeListener() 上调用新的 JSON 时。然后我得到了

“系统服务在 onCreate() 之前不可用于活动”中 onPostExecute()。

这是我的代码。

checkBox.setOnCheckedChangeListener(new OnCheckedChangeListener() {

                @Override
                public void onCheckedChanged(CompoundButton buttonView,
                        boolean isChecked) {

                    ac = new PhoneAndTabletsActivity();
                     ac.new SendFilterInfo().execute();


                }
            });

postExecute()

    @Override
    protected void onPostExecute(Void result) {
        super.onPostExecute(result);
        phoneTabletAdapter = new PhoneAndTabletAdapter1(
                PhoneAndTabletsActivity.this,
                R.layout.row_phone_and_tablet1, filterArray);
        gridView.setAdapter(phoneTabletAdapter);
    }

【问题讨论】:

    标签: android json checkbox adapter getview


    【解决方案1】:

    如果 PhoneAndTabletsActivity 您的主要活动不应该创建新活动

    删除这个

    ac = new PhoneAndTabletsActivity();
                         ac.new SendFilterInfo().execute();
    

    仅用于new SendFilterInfo().execute();

    【讨论】:

    • 当我删除它时,我收到此错误消息“无法访问 PhoneAndTabletsActivity 类型的封闭实例。必须使用 PhoneAndTabletsActivity 类型的封闭实例来限定分配(例如 xnew A(),其中 x 是一个实例PhoneAndTabletsActivity)。”
    • SendFilterInfo 类是 PhoneAndTabletsActivity 的子类吗?投资
    猜你喜欢
    • 1970-01-01
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多