android java线程中的新ArrayAdapter

android java线程中的新ArrayAdapter,java,android,multithreading,Java,Android,Multithreading,我在为android java线程中的微调器制作新的ArrayAdapter时遇到问题。我无法使这项工作,因为线程没有链接到我的主类。我在Internet上发现,我需要使用AsyncTask,而不是使用线程,但有一个原因,我无法获取其原理。所以我想知道如何解决这个问题 public void connect() throws InterruptedException { Thread thread = new Thread(new Runnable(){ @Overr

我在为android java线程中的微调器制作新的ArrayAdapter时遇到问题。我无法使这项工作,因为线程没有链接到我的主类。我在Internet上发现,我需要使用AsyncTask,而不是使用线程,但有一个原因,我无法获取其原理。所以我想知道如何解决这个问题

public void connect() throws InterruptedException
{


    Thread thread = new Thread(new Runnable(){
        @Override
        public void run() {

             HttpClient httpclient = new DefaultHttpClient();

            // Prepare a request object
            HttpGet httpget = new HttpGet("http://192.168.1.118:8080/quiz/output.php"); 

            // Execute the request
            HttpResponse response;
            try {
                response = httpclient.execute(httpget);
                // Examine the response status
                //Log.i("Info",response.getStatusLine().toString());  Comes back with HTTP/1.1 200 OK

                // Get hold of the response entity
                HttpEntity entity = response.getEntity();

                if (entity != null) {
                    InputStream instream = entity.getContent();
                    String result= convertStreamToString(instream);

                    jsonArray = new JSONArray(result);
                    instream.close();
                }


            } catch (Exception e) {
                Log.e("Error",e.toString());
            }

        }
    });

    Thread thread2 = new Thread(new Runnable(){
        @Override
        public void run() {

            List<String> list = new ArrayList<String>();

            for (int i=0; i<jsonArray.length(); i++) {
                try {
                    JSONObject item = jsonArray.getJSONObject(i);
                    String ID = item.getString("groepID");
                    String groepNaam = item.getString("groepNaam");
                    Log.e("string", "groepid = " + ID + " " + groepNaam);
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }

            ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, list);
            dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

            selectgroep.setAdapter(dataAdapter);
        }


    });

    thread.start();
    thread.join();
    thread2.start();

}
public void connect()引发InterruptedException
{
Thread Thread=新线程(new Runnable(){
@凌驾
公开募捐{
HttpClient HttpClient=新的DefaultHttpClient();
//准备一个请求对象
HttpGet HttpGet=新的HttpGet(“http://192.168.1.118:8080/quiz/output.php"); 
//执行请求
HttpResponse响应;
试一试{
response=httpclient.execute(httpget);
//检查响应状态
//Log.i(“Info”,response.getStatusLine().toString());返回HTTP/1.1200 OK
//获取响应实体
HttpEntity=response.getEntity();
如果(实体!=null){
InputStream instream=entity.getContent();
字符串结果=convertStreamToString(流内);
jsonArray=新jsonArray(结果);
流内关闭();
}
}捕获(例外e){
Log.e(“Error”,e.toString());
}
}
});
Thread thread2=新线程(new Runnable(){
@凌驾
公开募捐{
列表=新的ArrayList();

对于(int i=0;i使用此
前面的活动类:

ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(MyActivity.this,
    android.R.layout.simple_spinner_item, list);
ArrayAdapter dataAdapter=新的ArrayAdapter(MyActivity.this,
android.R.layout.simple\u微调器\u项目,列表);
请在此处阅读更多信息:

ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(MyActivity.this,
    android.R.layout.simple_spinner_item, list);