[英]Exception: “No default Constructor provided” exception subclassing ParseObject
我有兩個類NewsImage
和EventImage
幾乎相同,因此它們從Image
抽象類繼承。 這兩個都代表我的Parse數據庫中的一個類。
public abstract class Image extends ParseObject {
public Image(){};
public String getImageId(){
return getObjectId();
}
public void setImageId(String imageId){
setObjectId(imageId);
}
public byte[] getImageBytes(){
try {
return getParseFile("image").getData();
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
public void setImageBytes(byte[] bytes){
put("image", new ParseFile(bytes));
}
public Bitmap getBitmap(){
return Toolbox.ByteArrayToBitmap(getImageBytes());
}
EventImage類
@ParseClassName("OSW_event_images")
public class EventImage extends Image {
public EventImage() {
super();
}
public Event getEvent(){
return (Event) getParseObject("event");
}
public void setEvent(Event event){
put("event", event);
}
};
NewsImage類
@ParseClassName("OSW_news_images")
public class NewsImage extends Image {
public NewsImage() {
super();
}
public News getNews(){
return (News) getParseObject("news");
}
public void setNews(News event){
put("news", event);
}
};
}
我在調用Parse.initialize()
之前注冊了這兩個類
ParseObject.registerSubclass(Image.EventImage.class);
ParseObject.registerSubclass(Image.NewsImage.class);
運行此命令后,我得到:
09-19 12:38:39.794: E/AndroidRuntime(25806): java.lang.RuntimeException: Unable to start activity ComponentInfo{pl.holdapp.osw/pl.holdapp.osw.activities.MainActivity}: java.lang.IllegalArgumentException: No default constructor provided for class pl.holdapp.osw.objects.Image$EventImage
09-19 12:38:39.794: E/AndroidRuntime(25806): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)
將EventImage類設為靜態。 現在,默認構造函數需要對外部類的隱式引用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.