Android位图解码与数组

Android位图解码与数组,android,arrays,canvas,bitmap,Android,Arrays,Canvas,Bitmap,下面的代码是我从这里的文章中拼凑出来的,但我真的不知道下一步该怎么做 ArrayList<Bitmap> bitmapArray = new ArrayList<Bitmap>(); for (int i = 1; i < 4; i++){ bitmapArray.add(BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + Global.svar7));

下面的代码是我从这里的文章中拼凑出来的,但我真的不知道下一步该怎么做

ArrayList<Bitmap> bitmapArray = new ArrayList<Bitmap>();
        for (int i = 1; i < 4; i++){
            bitmapArray.add(BitmapFactory.decodeFile("/storage/emulated/0/Pictures/" + Global.svar7));
            canvas.drawBitmap(bitmapArray[i], 0, 0, null);
 }
ArrayList bitmapArray=new ArrayList();
对于(int i=1;i<4;i++){
添加(BitmapFactory.decodeFile(“/storage/emulated/0/Pictures/”+Global.svar7));
drawBitmap(位图数组[i],0,0,null);
}
基本上,我试图在循环中绘制3个位图到画布,一个在另一个下面

这是我在
Canvas.drawBitmap
行上发现的最近一个错误,该行表示
bitmapArray[I]
有错误

表达式的类型必须是数组类型,但已解析为ArrayList

我在这里搜索了这个错误,只能找到包含字符串和设置控件的示例

有什么想法吗?你能给我指一下正确的方向吗

非常感谢你的帮助


标记要访问ArrayList中的项目,请使用:


您需要从索引中减去1,因为您是从1而不是0开始循环。

您尝试将ArrayList用作数组。将
bitmapArray[i]
替换为
bitmapArray.get(i)


也应考虑数组和列表索引从0开始,而不是从1开始,因此您还需要用<代码>替换(int i=1;i<4;i++){<代码> >(int i=0;i<3;i++){< /c> > /p>谢谢您这么多地更改为画布。
canvas.drawBitmap(bitmapArray.get(i-1), 0, 0, null);