- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
有谁知道Parcelable的这个方法在哪里/何时被调用?
@Override
public int describeContents() {
return 0;
}
它必须被覆盖。但是我应该考虑用它做一些有用的事情吗?
最佳答案
Parcelable
中定义了一个名为 CONTENTS_FILE_DESCRIPTOR
的常量,用于在 describeContents()
中创建位掩码返回值。
API ref 中 CONTENTS_FILE_DESCRIPTOR
的描述是:
Bit masks for use with describeContents(): each bit represents a kind of object considered to have potential special significance when marshalled.
这实际上意味着:如果您需要将 FileDescriptor
对象放入 Parcelable,您应该/必须指定 CONTENTS_FILE_DESCRIPTOR
作为 describeContents() 的返回值,即通过“特殊对象”(在 describeContents()
的描述中)它们的真正意思是:FileDescriptor
。
整个Parcelable 功能看起来还没有完成(阅读:设计不佳)。文档中还有另一件奇怪的事情:
Classes implementing the Parcelable interface must also have a static field called CREATOR, which is an object implementing the Parcelable.Creator interface
通过以人类可读形式定义的规则实现多重继承? :-)
似乎 C++ 程序员设计了 Parceable
并且在某些时候他意识到:哦,该死的,Java 中没有多重继承...... :-)
关于android - 可在哪里/何时使用 describeContents()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4076946/
有谁知道Parcelable的这个方法在哪里/何时被调用? @Override public int describeContents() { return 0; } 它必须被覆盖。但是我应该
这个问题在这里已经有了答案: 关闭10年前. Possible Duplicate: Parcelable where/when is describeContents() used? 实现 Parc
我是一名优秀的程序员,十分优秀!