草庐IT

parcelables

全部标签

java - Android,如何在 Parcelable 类中正确使用 readTypedList 方法?

我有两个Activity,在第一个Activity中,我实例化了一个ObjectmyObject的ArrayList。在第二个Activity中,我需要得到这个Arraylist。我找到了一个教程:http://prasanta-paul.blogspot.com/2010/06/android-parcelable-example.html我已经实现了我的类(class),喜欢它的解释。公共(public)类Chapitre实现Parcelable{privateintnumero;privateStringtitre;privateStringdescription;private

java.lang.RuntimeException : Could not read input channel file descriptors from parcel

我正在使用crashlytics来跟踪我的应用程序的崩溃情况。有一个很难弄清楚的错误。crashlytics的堆栈跟踪如下:java.lang.RuntimeException:Couldnotreadinputchannelfiledescriptorsfromparcel.atandroid.view.InputChannel.nativeReadFromParcel(InputChannel.java)atandroid.view.InputChannel.readFromParcel(InputChannel.java:148)atandroid.view.InputChann

kotlin - 在 Kotlin 中,属性不会被序列化为 Parcel

我希望我的变量不是来self的构造函数的,是我的Parcelable的一部分。但是,我面临这个警告“正确地不会被序列化为包裹”,这告诉我我目前不能这样做。我在experimentalv.1.2.41中使用Kotlin。我该怎么办?@ParcelizedataclassMyClass(privatevalmyList:List):Parcelable{valaverage:Listbylazy{calculateAverage(myList)} 最佳答案 你想让它成为Parcelable的一部分(只需标记@Transient)还是将其

android - Kotlin 的 "@Parcelize"是否适用于非数据类?

我有简单的数据类。我的意思是,它们在逻辑上是数据类,但不是dataclass,因为我需要继承和其他构造函数。它们只有字段(基本类型为Int?、String?或List?等)和构造函数。我需要将它们(它们的所有字段都需要传递)从Activity传递到Activity,所以我需要使它们可分割(或者有更好的方法吗?)。我首先将它们创建为dataclass刚刚添加了@Parcelize.即使有一条警告和红线写着“CREATOR”之类的东西,我也可以忽略它们,并且应用程序按预期运行。但是,现在因为上面的原因,我把它们改成普通的类,突然出现编译错误。Error:java.util.NoSuchEl

Kotlin 中的 Android Parcelable

我有这样的Javaparcelable:@SuppressWarnings("rawtypes")publicstaticfinalParcelable.CreatorCREATOR=newParcelable.Creator(){publicKwerendaGraficznacreateFromParcel(Parcelin){returnnewKwerendaGraficzna(in);}publicKwerendaGraficzna[]newArray(intsize){returnnewKwerendaGraficzna[size];}};现在尝试在Kotlin中实现它:com

Kotlin 中的 Android Parcelable : CREATOR not found on Parcelable data class

随着KotlinRC的发布,我开始编写一个应用程序来学习它,但是我不知道如何让Parcelable工作。数据类:dataclassProject(valreponame:String,valusername:String,vallanguage:String,valvcsUrl:String,valbranches:Map):Parcelable{companionobject{valCREATOR=object:Parcelable.Creator{overridefuncreateFromParcel(`in`:Parcel):Project{returnProject(`in`)

parcelable - 将 Parceler 与带有构造函数的 Kotlin 数据类一起使用以进行序列化

有没有办法使用Parceler使用Kotlin数据类和构造函数进行序列化,而不为每个字段使用@ParcelProperty注释?如果我尝试使用这样的库:@ParceldataclassValve@ParcelConstructorconstructor(valsize:Int)我得到错误:Parceler:没有找到构造函数参数arg0的相应属性。但是,如果我添加@ParcelProperty("size")它就可以了。这是为什么呢?更新:还有其他方法可以使用这个库。我可以删除@ParcelConstructor注释,但是我会得到错误Error:Parceler:No@ParcelCon

android - 使用 Parcelable 接口(interface)时如何序列化空值

关于我的代码示例,如果一个Locable的变量为空,我该怎么办?例如,现在如果l.getZoom()返回null,我得到NullPointerException。@OverridepublicvoidwriteToParcel(Parcelparcel,intarg1){parcel.writeInt(count);for(Locablel:locableArr){parcel.writeInt(l.getOriginId());parcel.writeInt(l.getLocableType());parcel.writeInt(l.getZoom());parcel.writeDo

android - 将 Parcelable 的一个子类写入另一个 Parcel

我有一个实现Parcelable接口(interface)的类:classAimplementsParcelable{}我有另一个类B包含一个A对象作为实例变量。在类B内的writeToPacel中,我想将对象B写入Parcel:classBimplementsParcelable{publicvoidwriteToParcel(Parceldest,intflags){dest.write???}}如何写和读? 最佳答案 classBimplementsParcelable{//letsassumeyouhaveAasadatam

android - 读写 Parcelable 对象数组

我有以下类,它从/向包裹读取和写入对象数组:classClassABCextendsParcelable{MyClass[]mObjList;privatevoidreadFromParcel(Parcelin){mObjList=(MyClass[])in.readParcelableArray(com.myApp.MyClass.class.getClassLoader()));}publicvoidwriteToParcel(Parcelout,intarg1){out.writeParcelableArray(mObjList,0);}privateClassABC(Parce