将JSON数组从android线程返回到类

时间:2019-03-20 15:55:17

标签: android json arraylist

好的,我会尽力解释这一点。

我创建了一个线程以从JSON URL生成Arraylist。我想将其返回到主线程。我当时正在考虑使用全局数组,但是显然这是一种不好的做法。

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    LoadJson generate = new LoadJson();
    GenerateDataset.thread.start();
}

如您所见,我在类Generate中调用运行线程,该线程开始创建对象数组列表。我最好如何将此数据集返回到我的原始线程。

Thread thread = new Thread(new Runnable() {

    @Override
    public void run() {
        try {
            Arraylist<elements> temp = Start(); //<----- this list is what I want to return
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

1 个答案:

答案 0 :(得分:0)

您可以在该线程可以访问的GenerateDataset类中保留一个MutableLiveData<Arraylist<elements>>

在MainActivity中,观察LiveData并更新UI。

about LiveData