2015-02-08 125 views
5

我有一个自定义对象类,但通过接口实现,我如何将parceable纳入其中。 我跟踪并搜索了parceable,但它仅适用于对象类。 例如:How can I make my custom objects Parcelable?将parcelable添加到自定义对象的接口类中

我想将我的对象列表传递给android中的另一个活动。

代码:

public interface Projection { 

    interface Job { 
     @XBRead("./task") 
     List<Task> getTasks(); 

     @XBRead("./id") 
     String getid(); 

     @XBRead("./job_title") 
     String getjob_title(); 

     @XBRead("./job_description") 
     String getjob_description(); 

     @XBRead("./job_room") 
     String getjob_room(); 

     @XBRead("./status") 
     String getstatus(); 
    } 

    interface Task { 

     @XBRead("./task_id") 
     String gettask_id(); 

     @XBRead("./task_title") 
     String gettask_title(); 

     @XBRead("./task_description") 
     String gettask_description(); 

     @XBRead("./task_status") 
     String gettask_status(); 


    } 

    @XBRead("/root/job") 
    List<Job> getJobs(); 
} 

回答

9

您的自定义接口需要extend Parcelable

实现您的自定义接口的类还需要实现Parcelable接口,其中包括CREATOR

然后,您可以添加一个对象实现您的自定义接口,可Intent这样的:

intent.putExtra("thing", thing); 

或添加含有这些对象像这样的ArrayList

ArrayList<Thing> things; 
intent.putParcelableArrayListExtra("things", things); 

在接收结束时,Activity可以像这样从Intent中提取物体:

Thing thing = intent.getParcelableExtra("thing"); 

ArrayList<Thing> things = intent.getParcelableArrayListExtra("things"); 
相关问题