将位图的arraylist从活动传递到另一个

时间:2011-07-25 08:37:42

标签: android arraylist

我有一个android,我想把一个位图的arraylist从一个活动传递到另一个。我可以这样做。

ArrayList<String> questionArray;

 ArrayList<Bitmap>questionBitmap=new ArrayList<Bitmap>(); questionBitmap=loadBitmapFromAllArray(questionArray);public ArrayList<Bitmap> loadBitmapFromAllArray(ArrayList<String> questionArray) 
    {
        URL questionUrl = null;
        ArrayList<Bitmap>questionBitmap=new ArrayList<Bitmap>();
         for(int b =0; b <questionArray.size(); b+=1)
            {
                String questionSource=questionArray.get(b);
                try 
                {
                     questionUrl=new URL(questionSource);
                } 
                catch (MalformedURLException e)
                {
                    e.printStackTrace();
                }
                questionBitmap.add(getRemoteImage(questionUrl));
            }
        return questionBitmap;  
    }
     public Bitmap getRemoteImage(final URL aURL) { 
         try {
                 final URLConnection conn = aURL.openConnection();
                 conn.connect();
                 final BufferedInputStream bis = new BufferedInputStream(conn.getInputStream());
                 final Bitmap bm = BitmapFactory.decodeStream(bis);
                 bis.close();
                 return bm;
         }
         catch (IOException e) 
         {
         }
         return null;
 }

2 个答案:

答案 0 :(得分:1)

        Intent myIntent = new Intent(arg1.getContext(), picViewer.class);
        Bundle bundle = new Bundle();
        bundle.putParcelableArray("images", your_array);
        myIntent.putExtras(bundle);

修改

  

这可以完成,因为Bitmap实现了Parcelable!

答案 1 :(得分:0)

我猜你的bitmaps的arraylist是一个字符串数组,文件名是位图...

从活动A发送到活动B的示例:

Intent i = new Intent (YourContext, ReceiverClass.class);
i.putExtra("bmpArray", yourBitmapArray);
context.startActivity(i);

在接收活动中:

receivingBitmapArray = getIntent().getStringArrayExtra("bmpArray");