Android改型2-无法在onResponse回调中传递字符串

Android改型2-无法在onResponse回调中传递字符串,android,Android,我想在2的onResponse回调中连接/追加一个字符串 全局变量 Boolean isSaved = "false"; String message = ""; Queries queries = Server.getClient().create(Queries.class); Call<ResponseModel> responseModelCall = queries.products(param1, param2); responseModel

我想在2的onResponse回调中连接/追加一个字符串

全局变量

Boolean isSaved = "false";
String message = "";


    Queries queries = Server.getClient().create(Queries.class);
    Call<ResponseModel> responseModelCall = queries.products(param1, param2);

    responseModelCall.enqueue(new Callback<ResponseModel>() {
        @Override
        public void onResponse(Call<ResponseModel> call, Response<ResponseModel> response) {
            if(response.isSuccessful()) {
                if(response.body().getCode().equals("1")) {
                    message = "Success";
                    isSaved = true;
                } else {
                    message = "Failed";
                    isSaved = false;
                }
            } else {
                    message = "Error";
            }
        }

        @Override
        public void onFailure(Call<ResponseModel> call, Throwable t) {

        }
    });

    if(isSaved){
        Toast.maketext(getActivity, "Congrats: "+message, LENGTH_SHORT).show();
    } else {
        Toast.maketext(getActivity, "I am sorry: "+message, LENGTH_SHORT).show();
    }
如果数据被保存,那么toast将被删除 祝贺你:

如果不是 对不起:


我注意到我从onResponse传递的字符串不起作用。但是布尔值确实起作用了

如果你想祝酒,你应该把它放在onResponse里面


如果你想祝酒,你应该把它放在里面


只需将烤面包的条件放入OnResponse中,即可触发烤面包。

只需将烤面包的条件放入OnResponse中,即可触发烤面包。

嗨,烤面包只是一个示例,我需要将该字符串插入其他内容。顺便说一句,我有一个解决办法。我在一个void/method/function中传递了它,我不知道该怎么称呼它,我对php android c感到困惑,这让我想知道为什么我选择成为程序员。无论如何,谢谢你的努力。@Maki你是说回拨还是倾听者?这是更好的扩展方式!不要混淆,因为你的问题将帮助其他程序员。非常感谢。问题是为什么即使字符串声明为全局变量,也不能使用附加在onResponse中的字符串。同样,您可以在onResponse中使用附加的布尔值。嗨,Toast只是一个示例,我需要将该字符串转换为其他内容。顺便说一句,我有一个解决办法。我在一个void/method/function中传递了它,我不知道该怎么称呼它,我对php android c感到困惑,这让我想知道为什么我选择成为程序员。无论如何,谢谢你的努力。@Maki你是说回拨还是倾听者?这是更好的扩展方式!不要混淆,因为你的问题将帮助其他程序员。非常感谢。问题是为什么即使字符串声明为全局变量,也不能使用附加在onResponse中的字符串。同样,您也可以使用附加在onResponse中的布尔值。移动onResponse上的if条件移动onResponse上的if条件
responseModelCall.enqueue(new Callback<ResponseModel>() {
        @Override
        public void onResponse(Call<ResponseModel> call, Response<ResponseModel> response) {
            if(response.isSuccessful()) {
                if(response.body().getCode().equals("1")) {
                    message = "Success";
                    isSaved = true;
                } else {
                    message = "Failed";
                    isSaved = false;
                }
            } else {
                    message = "Error";
            }

            if (isSaved){
                Toast.maketext(getActivity, "Congrats: "+message, LENGTH_SHORT).show();
            } else {
                Toast.maketext(getActivity, "I am sorry: "+message, LENGTH_SHORT).show();
            }
        }

        @Override
        public void onFailure(Call<ResponseModel> call, Throwable t) {

        }
    });