从onClickListerner访问现有的json对象

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从onClickListerner访问现有的json对象相关的知识,希望对你有一定的参考价值。

在我的onCreate中,我从文件中将一个json字符串读入字符串myData中。然后将其加载到JSONObject allTheArray

在我的onCreate中,我有一个button_saveData.setOnClickListener(new View.OnClickListener()等。>

我希望它更新JSONObject中的值,然后再次写入本地文件。

如果我在JSONObject myNewData中创建新的onClickListener并使用

myNewData.put(name,value) 

这可行。

但是,如果我尝试这样做,则无法访问JSONObject allTheArray以使用allTheArray.put(name,value)中的onClickListener

问题

:如何在JSONObject allTheArray中定义原始的onCreate,以便可以在onClickListener中进行访问>

伪代码:

protected Void onCreate(etc)
    String myData = readFromFile(this,data);
    JSONObject allTheArray = null;
    allTheArray = new JSONObject(myData);
    String value_id = allTheArray.getString("id");        
    text_id.setText(value_id);


onClickListener 
    it is in here I want to update allTheArray
    allTheArray.put(name,value);(I cannot access allTheArray here)
    then save 

所以再次提问:在onCreate中定义了JSONObject后,如何使它在onClickListener中可用。

[在我的onCreate中,我从文件中将json字符串读入字符串myData。然后将其加载到JSONObject allTheArray中。在我的onCreate中,我有一个button_saveData.setOnClickListener(new View.OnClickListener()...

答案

Either

allTheArray设置为global

以上是关于从onClickListerner访问现有的json对象的主要内容,如果未能解决你的问题,请参考以下文章

流星客户端访问现有的 mongoDB

访问现有的 WPF 应用程序实例?

Azure管道 - 通过json导入任务组总是创建一个新的而不是更改现有的

如何将测试添加到现有的 Typescript 项目,并让它显示在测试资源管理器中?

如何从Calendly获得现有的webhook(来自json的解析)?

如何将这个现有的 json 转换为 GraphQL 端点?