如何在Android中使用离子库?

时间:2015-07-11 10:12:18

标签: android json ion

我正在使用离子库从php web服务下载json对象响应。 我这样用它:

bool (__fastcall fun)(float par1, float par2)
{
    return (par1 == par2) ? true : false;
}

bool (__fastcall *newFun())(std::string str)
{
    //...
    return fun;
}

现在我想问两个问题:

  1. 如何以良好的方式显示“请稍候”和进度条?进度条应该出现,然后在达到服务器响应时消失。

  2. 如何解析我得到的json?我已经记录了我的结果

    Log.v(“IonResult”,result.toString());

  3. 我可以看到响应,但是如何使用它并解析它并获取我想要的项目?

    请帮忙,我知道这是一个基本问题,但我是Android的初学者,请帮助我改进。感谢。

1 个答案:

答案 0 :(得分:0)

我最近开始使用Ion,所以我不确定这是否是最好的方法(如果你知道,请在这里发表评论!)。

所以,我正在使用回调将值返回给另一个类。

public interface ResponseCallback {

    public void onSuccess(String result);

    public void onError(String result);

}

我的代码中的一个例子:

public void getChats(final Context context, final String url,final ResponseCallback responseCallback) {


 Ion.with(context)

        .load(url)
        .asString()
        .setCallback(new FutureCallback<String>() {
            @Override
            public void onCompleted(Exception e, String result) {
                if (e != null) {
                    if (responseCallback != null) {
                        responseCallback.onError(e.toString());
                    }
                    Toast.makeText(context, "Error loading chat list.", Toast.LENGTH_SHORT);
                    return;
                }

                if (responseCallback != null) {
                    responseCallback.onSuccess(result);
                }
            }
        });
}

因此,当我调用getChats()时,我实现了ResponseCallback方法。我希望它有所帮助,即使我认为还有更好的方法。