将我的JSON数组从Android线程返回到课程



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

我创建了一个线程来从JSON URL生成阵列列表。我想将其返回到我的主线程。我正在考虑使用全球阵列,但显然这是不良的做法。

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();
}

您可以看到我在类生成的"我的run thread"开始创建我的对象arraylist。我如何最好将此数据集返回我的原始线程。

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();
        }
    }

您可以在生成的AtataSet类中持有该线程可以访问的MutableLiveData<Arraylist<elements>>

在您的主动脉中观察Livedata并更新UI。

关于Livedata

最新更新