2015-02-08 111 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"); 
相關問題