如何将 byte[] 的 ArrayList 转换为 Android 中的 Integer 数组?
How to convert an ArrayList of byte[] to an array of Integer in Android?
我正在尝试将 ArrayList<byte[]> listByte
转换为 Integer[] arrInteger
。我正在通过对象从服务器获取 listByte
of 图片。我的目标是让这个 Array of Integer
(图片) 稍后在 ListView
(arrayAdapter = new MyClass(MyActivity.this, stringArr, arrInteger);
中使用它。
我试过这样:
ArrayList<Integer> integerList = new ArrayList<>();
for (int i = 0; i < objectList.size(); i++) {
integerList.add(ByteBuffer.wrap(objectList.get(i).getPicture()).getInt(i));
/*integerList.add(new BigInteger(objectList.get(i).getImage()).intValue());*/ //I tried this too
}
和 Array of Integer
,像这样:
Integer[] arrInteger = new Integer[integerList.size()];
arrInteger = integerList.toArray(arrInteger);
当我 运行 应用程序时, ListView
显示时没有图片。所以我使用了调试,我发现我的 arrInteger = null
!.如何正确转换?
解码回位图
ArrayList<Bitmap> imgs = new ArrayList<Bitmap>();
for(byte[] array: listByte)
{
Bitmap bm = BitmapFactory.decodeByteArray(array, 0, array.length); //use android built-in functions
imgs.add(bm);
}
我正在尝试将 ArrayList<byte[]> listByte
转换为 Integer[] arrInteger
。我正在通过对象从服务器获取 listByte
of 图片。我的目标是让这个 Array of Integer
(图片) 稍后在 ListView
(arrayAdapter = new MyClass(MyActivity.this, stringArr, arrInteger);
中使用它。
我试过这样:
ArrayList<Integer> integerList = new ArrayList<>();
for (int i = 0; i < objectList.size(); i++) {
integerList.add(ByteBuffer.wrap(objectList.get(i).getPicture()).getInt(i));
/*integerList.add(new BigInteger(objectList.get(i).getImage()).intValue());*/ //I tried this too
}
和 Array of Integer
,像这样:
Integer[] arrInteger = new Integer[integerList.size()];
arrInteger = integerList.toArray(arrInteger);
当我 运行 应用程序时, ListView
显示时没有图片。所以我使用了调试,我发现我的 arrInteger = null
!.如何正确转换?
解码回位图
ArrayList<Bitmap> imgs = new ArrayList<Bitmap>();
for(byte[] array: listByte)
{
Bitmap bm = BitmapFactory.decodeByteArray(array, 0, array.length); //use android built-in functions
imgs.add(bm);
}