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.

相关文章

前言 逆向工程从数据库表直接生成代码,是日常开发中常用的敏...
前言 Java网络编程之Socket套接字,Socket套接字使用TCP提供...
前言 虽然现在已经很少项目会涉及GUI技术,但作为一个合格的...
前言 几乎所有的系统都有密码安全要求,这是基础的安全策略,...
前言 当我们在写设计文档,或者是其他涉及到数据架构、表结构...
前言 Fiddler是一款强大的Web调试代理工具,又称抓包软件,本...