Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java/Android独家新闻_Java_Android_Json - Fatal编程技术网

Java/Android独家新闻

Java/Android独家新闻,java,android,json,Java,Android,Json,为什么Log.d(“Test”和“+ListOfAttractions3.size()+”)返回0返回2,即使dataserequest()首先被调用?有些日志2也是最后打印的,但我不明白为什么 代码: 公共类测试列表扩展活动{ List ListofAttraction3=新的ArrayList(); @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.

为什么
Log.d(“Test”和“+ListOfAttractions3.size()+”)Log.d(“Test2”和“+ListOfAttractions3.size()+”)时,code>返回0返回2,即使
dataserequest()首先被调用?有些日志2也是最后打印的,但我不明白为什么

代码:

公共类测试列表扩展活动{
List ListofAttraction3=新的ArrayList();
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u测试列表);
dataserequest();
Log.d(“Test”和“+ListOfAttractions3.size()+”);
}
/*私有void刷新显示(){
ListView listView2=(ListView)findViewById(R.id.listView2);
ArrayAdapter=新的ArrayAdapter(这是android.R.layout.simple\u list\u item\u 1,ListofAttractions 3);
listView2.setAdapter(适配器);
adapter.notifyDataSetChanged();
}*/
私有void dataserequest(){
Response.Listener responseListener=新的Response.Listener(){
@凌驾
公共void onResponse(字符串响应){
试一试{
JSONArray JSONArray=新JSONArray(响应);
int i=0;
而(i
Volley在不同的线程上异步执行其任务<代码>队列2。添加不等待。它只是添加并立即返回多线程是一个非常强大/危险的工具。欢迎来到精彩的比赛条件世界。那么,如何不用点击按钮就从我的sqldatabase加载数据到我的ListView呢/
public class Testlist extends Activity {
    List<Attractions> ListOfAttractions3 = new ArrayList<>();


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_testlist);
        DatabseRequest();
        Log.d("Test", "" + ListOfAttractions3.size() + "");
    }


    /*private void reFreshDisplay(){
        ListView listView2 = (ListView) findViewById(R.id.listView2);
        ArrayAdapter<Attractions> adapter = new ArrayAdapter<Attractions>(this, android.R.layout.simple_list_item_1, ListOfAttractions3);
        listView2.setAdapter(adapter);
        adapter.notifyDataSetChanged();
    }*/



    private void DatabseRequest(){

        Response.Listener<String> responseListener = new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                try {
                    JSONArray jsonArray = new JSONArray(response);
                    int i = 0;

                    while(i < jsonArray.length()) {
                        JSONObject jsonObject = jsonArray.getJSONObject(i);

                        boolean success;
                        if (jsonObject.getBoolean("success")) success = true;
                        else success = false;


                        if (success) {
                            String attractionname = jsonObject.getString("attractionname");
                            double lng = jsonObject.getDouble("longitude");
                            double lat = jsonObject.getDouble("latitude");
                            int Rating = jsonObject.getInt("rating");

                            Attractions attraction = new Attractions(attractionname, lng, lat, Rating);

                            ListOfAttractions3.add(attraction);
                            Log.d("Test2", "" + ListOfAttractions3.size() + "");

                        } else {
                            AlertDialog.Builder builder = new AlertDialog.Builder(Testlist.this);
                            builder.setMessage("Connection to server Failed")
                                    .setNegativeButton("Retry", null)
                                    .create()
                                    .show();
                        }
                        i++;
                    }
                } catch (JSONException e) {
                    e.printStackTrace();
                }
            }
        };

        AttractionRequest attractionRequest = new AttractionRequest(responseListener);
        RequestQueue queue2 = Volley.newRequestQueue(Testlist.this);
        queue2.add(attractionRequest);
    }
}