成员变量未在actionbar活动中更新

时间:2015-01-24 21:53:58

标签: android android-activity scope

我的两个全局成员变量在某种程度上没有得到我在oncreate()方法中分配给它们的数据,下面是我的代码。在okhttp的response()方法中,log.d打印正确的大小,但除此之外,它打印0.见下面的代码

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_image_grid);
    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment())
                .commit();
    }


   // for (int start = 0; start < 20; start++) {


        if (isNetworkAvailable()) {

            //using okHttp library to connect to imagesUrl and retrieve JSON Data
            OkHttpClient client = new OkHttpClient();
            Request request = new Request.Builder()
                    .url(getImagePage(start)).
                            build();

            Call call = client.newCall(request);

            //runs the below code asynchronously
            call.enqueue(new Callback() {
                @Override
                public void onFailure(Request request, IOException e) {
                    Log.v(TAG, "error from request");

                }

                @Override
                public void onResponse(Response response) throws IOException {

                    try {
                        String jsonData = response.body().string();
                        //Log.v(TAG, jsonData);

                        if (!response.isSuccessful()) {
                            alertUserAboutError();
                        } else {

                            mSmalImagesUrls = getCurrentDetails(jsonData);
                            mBigImagesUrls.add(mSmalImagesUrls);
                            Log.d(TAG, mBigImagesUrls.size() + " big size");
                            Log.d(TAG, mSmalImagesUrls.size() + " small size");

                        }
                    } catch (IOException | JSONException e) {
                        Log.e(TAG, "Exception caught :", e);
                    }
                }
            });
        } else {
            Toast.makeText(this, "Network is unavailable", Toast.LENGTH_LONG).show();
        }
    //}

    Log.d(TAG, mBigImagesUrls.size() + " big size");
    Log.d(TAG, mSmalImagesUrls.size() + " small size");

}

最后3个Log.d语句打印0.我不知道为什么。请让我知道我错过了什么。感谢

0 个答案:

没有答案