Android 我可以将位图与ormlite一起使用吗
我正在使用类别Android 我可以将位图与ormlite一起使用吗,android,bitmap,Android,Bitmap,我正在使用类别 package Entities; import java.util.ArrayList; import com.j256.ormlite.field.DatabaseField; import utils.ImageHelper; import android.graphics.Bitmap; import android.util.Base64; public class Category { @DatabaseField(generatedId = t
package Entities;
import java.util.ArrayList;
import com.j256.ormlite.field.DatabaseField;
import utils.ImageHelper;
import android.graphics.Bitmap;
import android.util.Base64;
public class Category {
@DatabaseField(generatedId = true)
int id ;
@DatabaseField
String name ;
String image;
Bitmap bitmapImage;
public Bitmap getBitmapImage() {
return bitmapImage;
}
public void setBitmapImage(Bitmap bitmapImage) {
this.bitmapImage = bitmapImage;
}
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
ArrayList<Item> items;
public Category (int id,String CN , String CP)
{
this.id=id;
name=CN;
image=CP;
}
public Category (String CN , String CP)
{
name=CN;
image=CP;
}
public Category ()
{
}
public ArrayList<Item> getItems() {
return items;
}
public void setItems(ArrayList<Item> items) {
this.items = items;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public void convertStringImageToBitmapImage()
{
if(image!=null)
{
byte[] imgData = Base64.decode(image, Base64.DEFAULT);
bitmapImage = ImageHelper.CreateBitmapFromByteArray(imgData);
image="";
}
}
}
如何解决此问题?您不能使用
位图
,但是,您可以将图像转换为Base64
,并将其另存为String
在您可以恢复此信息后,请执行以下操作:
InfoDao = getHelper().getInfoDao();
data = InfoDao.queryForAll();
byte[] decodedString = Base64.decode(data.get(position).getImage(),Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
现在您可以使用位图了我只想把它保存在我的classI committed中,执行的行或mliteconfigutil,然后我取消了限制,它就可以工作了
InfoDao = getHelper().getInfoDao();
data = InfoDao.queryForAll();
byte[] decodedString = Base64.decode(data.get(position).getImage(),Base64.DEFAULT);
Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);