在array-android app中传递arraylist

时间:2013-03-04 11:26:26

标签: java android json parsing arrays

我一直在推荐这个应用程序来制作一个图库模块 https://github.com/nostra13/Android-Universal-Image-Loader

然而根据我的应用程序中的要求,图像是动态添加的。所以,我通过JSON获取所有图像。来自JSON Iam的图像响应添加了arraylist。

我应该如何在新班级中传递“image_urls.add(folio.getString(i));”:

public class Test extends Activity{

    private static String url = "http://www.xyz.com/album_pro/array_to_encode";

     JSONArray folio = null;
     ArrayList<String> urlList = new ArrayList<String>();
     @SuppressLint("NewApi")
    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
              StrictMode.setThreadPolicy(policy);

            JSONParser jParser = new JSONParser();
            {

            try{

                JSONObject json = jParser.getJSONFromUrl(url);
                Log.v("URL",json.toString());

            JSONObject seo = json.getJSONObject("SEO");
            Log.v("seo",seo.toString());
            JSONArray folio = seo.getJSONArray("Folio");
            ArrayList<String> image_urls = new ArrayList<String>();

            for(int i=0;i< folio.length();i++)
            {

                image_urls.add(folio.getString(i));

            }


            }
            catch(Exception e)
            {
                e.printStackTrace();
            }
            }
}

}

如何在名为“Images”的非活动类中传递“image_urls.add(folio.getString(i));” 即

public class Images {
    public final static String[] imageUrls = new String[] {
      **Required the arraylist of "Test" activity**

    };
    public final static String[] imageThumbUrls = new String[] {

         **Required the arraylist of "Test" activity**
    };

}

3 个答案:

答案 0 :(得分:1)

制作ArrayList publicstatic并将其用于其他课程Test.urlList

答案 1 :(得分:1)

使Images成员非最终成员,以便您可以在运行时设置它们。

在将图片网址添加到image_urls ArrayList的循环之后,设置Images class的属性:

Images.imageUrls = image_urls.toArray();

答案 2 :(得分:0)

简单的方法是将image_urls设为公共静态。因为它只包含网址吗?只有少量数据,在Image类中使用

进行访问
Test.image_urls.get(integer);