帮酷LOGO
  • 显示原文与译文双语对照的内容
文章标签:AUTO  Parcel  PAR  ext  Parcelable  
An Android Parcelable extension for Google's AutoValue.

  • 源代码名称:auto-value-parcel
  • 源代码网址:http://www.github.com/rharter/auto-value-parcel
  • auto-value-parcel源代码文档
  • auto-value-parcel源代码下载
  • Git URL:
    git://www.github.com/rharter/auto-value-parcel.git
  • Git Clone代码到本地:
    git clone http://www.github.com/rharter/auto-value-parcel
  • Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/rharter/auto-value-parcel
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
  • AutoValue: 包扩展

    Build Status

    google AutoValue插件的扩展,支持android接口的Parcelable 。

    用法

    只要在项目中包含 AutoValue: 包扩展,并让你的任何 @AutoValue 注释的分类实现 Parcelable

    @AutoValuepublicabstractclassFooimplementsParcelable {
     publicabstractStringbar();
    }

    现在构建你的项目并享受你的Parcelable Foo 。

    TypeAdapters

    跳出 AutoValue: 包扩展支持包类支持的所有类型,但有时可能需要打包其他类型,例如或者 ArrayMap 。 你可以使用自定义TypeAdapter进行这里操作。

    TypeAdapter允许你手动地对这些属性进行分组和 unparcel,从而为属性定义自定义的de/序列化逻辑。

    publicclassDateTypeAdapterimplementsTypeAdapter<Date> {
     publicDatefromParcel(Parcelin) {
     returnnewDate(in.readLong());
     }
     publicvoidtoParcel(Datevalue, Parceldest) {
     dest.writeLong(value.getTime());
     }
    }

    定义自定义TypeAdapter之后,在AutoValue类上使用它就像向你想要使用你的TypeAdapter序列化的任何属性添加 ParcelAdapter 注释一样简单。

    @AutoValuepublicabstractclassFooimplementsParcelable {
     @ParcelAdapter(DateTypeAdapter.class) publicabstractDatedate();
    }

    由于TypeAdapters需要一个小的运行时组件,所以它们是可选的。 要在项目中使用 TypeAdapters,你必须在 auto-value-parcel-adapter 工件上添加一个编译依赖项。

    compile 'com.ryanharter.auto.value:auto-value-parcel-adapter:0.2.6'

    下载

    添加一个Gradle依赖项:

    annotationProcessor 'com.ryanharter.auto.value:auto-value-parcel:0.2.6'// Optionally for TypeAdapter supportcompile 'com.ryanharter.auto.value:auto-value-parcel-adapter:0.2.6'

    ( 迁移aptannotationProcessor )

    许可证

    Copyright 2015 Ryan Harter.
    Licensed under the Apache License, Version 2.0 (the"License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at
     http://www.apache.org/licenses/LICENSE-2.0
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an"AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.


    文章标签:PAR  ext  AUTO  Parcel  Parcelable  

    Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备05059198号-3  |  如果智培  |  酷兔英语