显示错误以获取图像视图的空数组错误的长度
showing error to get length of null array error for Image view
我的问题是当我 运行 应用程序跳出的代码 application.I 我使用 SQLITE 数据库使用 Recycler View 我有两个视图控件 1 是 Textview,另一个是 Image view.An 在 Textview 上应用程序 运行ning 但是当我使用 Image view 然后 Android Studio 它有错误:"java.lang.NullPointerException: Attempt to get length of null array"
提前致谢。
这是我的 Recycler_List_Item_Adapter2.java
@Override
public void onBindViewHolder(MyViewHolder_item holder, int position) {
Recycler_List_Item_Pojo2 recycler_title_pojo=arrayList.get(position);
holder.outImage=recycler_title_pojo.getImg();
ByteArrayInputStream imageStream = new ByteArrayInputStream(holder.outImage);
Bitmap theImage = BitmapFactory.decodeStream(imageStream);
holder.imageView.setImageBitmap(theImage);
holder.textView.setText(recycler_title_pojo.getBr_title());
}
@Override
public int getItemCount() {
return arrayList.size();
}
public class MyViewHolder_item extends RecyclerView.ViewHolder {
TextView textView;
CircleImageView imageView;
byte[] outImage;
这是我的 Recycler_List_Item_Pojo2.java
public class Recycler_List_Item_Pojo2 {
byte[] img=null;
String br_title,bt_material,br_procedure,br_notice;
public Recycler_List_Item_Pojo2(byte[] img, String br_title) {
this.img = img;
this.br_title = br_title;
}
public byte[] getImg() {
return img;
}
public void setImg(byte[] img) {
this.img = img;
}
public String getBr_title() {
return br_title;
}
public void setBr_title(String br_title) {
this.br_title = br_title;
}
这是我的 Sqlite 数据库代码
Recycler_List_Item_Pojo2 product = null;
List<Recycler_List_Item_Pojo2> productList = new ArrayList<Recycler_List_Item_Pojo2>();
openDatabase();
Cursor cursor = mDatabase.rawQuery(" select * from a", null, null);
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
product = new Recycler_List_Item_Pojo2(cursor.getBlob(1),cursor.getString(2));
productList.add(product);
cursor.moveToNext();
}
cursor.close();
closeDatabase();
return productList;
这是我的错误
FATAL EXCEPTION: main
Process: com.pp.receipe, PID: 21550
java.lang.NullPointerException: Attempt to get length of null array
at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:60)
at com.pp.receipe.adapter.Recycler_List_Item_Adapter2.onBindViewHolder(Recycler_List_Item_Adapter2.java:50)
at com.pp.receipe.adapter.Recycler_List_Item_Adapter2.onBindViewHolder(Recycler_List_Item_Adapter2.java:30)
@Prashant 请检查您的 SQLITE Database.If 是否插入了任何 NULL 值或检查任何字段是否为空或 not.Remove 数据库中的空字段。
我的问题是当我 运行 应用程序跳出的代码 application.I 我使用 SQLITE 数据库使用 Recycler View 我有两个视图控件 1 是 Textview,另一个是 Image view.An 在 Textview 上应用程序 运行ning 但是当我使用 Image view 然后 Android Studio 它有错误:"java.lang.NullPointerException: Attempt to get length of null array"
提前致谢。 这是我的 Recycler_List_Item_Adapter2.java
@Override
public void onBindViewHolder(MyViewHolder_item holder, int position) {
Recycler_List_Item_Pojo2 recycler_title_pojo=arrayList.get(position);
holder.outImage=recycler_title_pojo.getImg();
ByteArrayInputStream imageStream = new ByteArrayInputStream(holder.outImage);
Bitmap theImage = BitmapFactory.decodeStream(imageStream);
holder.imageView.setImageBitmap(theImage);
holder.textView.setText(recycler_title_pojo.getBr_title());
}
@Override
public int getItemCount() {
return arrayList.size();
}
public class MyViewHolder_item extends RecyclerView.ViewHolder {
TextView textView;
CircleImageView imageView;
byte[] outImage;
这是我的 Recycler_List_Item_Pojo2.java
public class Recycler_List_Item_Pojo2 {
byte[] img=null;
String br_title,bt_material,br_procedure,br_notice;
public Recycler_List_Item_Pojo2(byte[] img, String br_title) {
this.img = img;
this.br_title = br_title;
}
public byte[] getImg() {
return img;
}
public void setImg(byte[] img) {
this.img = img;
}
public String getBr_title() {
return br_title;
}
public void setBr_title(String br_title) {
this.br_title = br_title;
}
这是我的 Sqlite 数据库代码
Recycler_List_Item_Pojo2 product = null;
List<Recycler_List_Item_Pojo2> productList = new ArrayList<Recycler_List_Item_Pojo2>();
openDatabase();
Cursor cursor = mDatabase.rawQuery(" select * from a", null, null);
cursor.moveToFirst();
while (!cursor.isAfterLast()) {
product = new Recycler_List_Item_Pojo2(cursor.getBlob(1),cursor.getString(2));
productList.add(product);
cursor.moveToNext();
}
cursor.close();
closeDatabase();
return productList;
这是我的错误
FATAL EXCEPTION: main
Process: com.pp.receipe, PID: 21550
java.lang.NullPointerException: Attempt to get length of null array
at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:60)
at com.pp.receipe.adapter.Recycler_List_Item_Adapter2.onBindViewHolder(Recycler_List_Item_Adapter2.java:50)
at com.pp.receipe.adapter.Recycler_List_Item_Adapter2.onBindViewHolder(Recycler_List_Item_Adapter2.java:30)
@Prashant 请检查您的 SQLITE Database.If 是否插入了任何 NULL 值或检查任何字段是否为空或 not.Remove 数据库中的空字段。