微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

java – 尝试读取Parcel String []的NullPointerException

当我从 Parcel创建一个对象时,当我试图读回一个String []时,我得到一个NullPointerException.这是我的代码
@Override
public void writetoParcel(Parcel out,int flags) {
    out.writeInt(floors);
    out.writeStringArray(indoorMaps);

}

public static final Parcelable.Creator<Building> CREATOR
    = new Parcelable.Creator<Building>() {
    public Building createFromParcel(Parcel in) {
        return new Building(in);
    }

public Building[] newArray(int size) {
    return new Building[size];
}
};

private Building(Parcel in) {   
    floors = in.readInt();
    in.readStringArray(indoorMaps);
}

所以indoorMaps是我的类的属性,它是一个String [],但我得到NullPointerException.我检查了dev’s documentation,但那里什么都没有.
我跟着this tutorial,他们在那里使用readStringArray.

有什么建议?谢谢

解决方法

调用readStringArray时,您正在为Parcel提供一个空数组.要使其工作,您必须初始化indoorMaps.你可能想要createStringArray.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐