2016-12-11 3 views
0

Androidでどのように動作するのかを理解する上で問題があります。airbnbエポキシ - 新しいアイテムを挿入する方法

public class PhotoAdapter extends EpoxyAdapter { 
    private final LoaderModel loaderModel = new LoaderModel(); 

    public PhotoAdapter() { 
    models.add(new HeaderModel("My Photos")); 
    models.add(loaderModel); 
    notifyItemRangeInserted(0, 2); 
    } 

    public void addPhotos(Collection<Photo> photos) { 
    for (Photo photo : photos) { 
     int loaderPosition = models.size() - 1; 
     models.add(loaderPosition, photo); 
     notifyItemInserted(loaderPosition); 
    } 
    } 
} 

これは私が「のような写真をお友達」についての新しいアイテムを挿入する方法example here

あたりの通りです:チュートリアルhere

は、次のように私は、アダプタを持っている想像もあります。だから私は新しいヘッダーを "あなたの友達のような写真"と言うと、私は実際にモデルに保存している写真を追加する必要があります。

私はちょうどそれを動作させるために次の手順を実行します:

public void addFriendsPhotos(Collection<Photo> photosOfFriends) { 

models.add(new HeaderModel("photos your friends like")); 
for (Photo photo : photosOfFriends) { 
     int loaderPosition = models.size() - 1; 
     models.add(loaderPosition, photo); 
     notifyItemInserted(loaderPosition); 
    } 
    } 

私は「モデル」クラスについて少し混乱しています。私は、例えば、私がHeaderModelとLoaderModelを見ている代わりに、PhotosModelクラスとPhotoFriendsModelクラスなどがあると考えました。私はすべての項目の行の種類のモデルがあるはずだと思った。誰かが説明できますか?

更新日:

私にはより多くの情報とその写真があります。私は、写真が撮影された住所に関する情報を持っていると言います。今すぐすべての写真が写真のすぐ下に表示されたら、それぞれの写真が撮られた巨大な住所のリストを表示したいと思います。アドレスリストをどのように追加するのか教えてください。

答えて

0

はイエス右手EpoxyModelは

public void addFriendsPhotos(Collection<Photo> photosOfFriends) 
{ 

    addModel(new HeaderModel("photos your friends like")); 

    for (Photo photo : photosOfFriends) 
    { 
     addModel(new PhotModel(photo)); 
    } 

} 
+0

イムまだ混乱してあなたのアダプタで使用されるすべてのビュータイプのために使用されます。私はもっ​​と多くの情報とその写真がないと言いましょう。私は、写真が撮影された住所に関する情報を持っていると言います。だから今すぐすべての写真が写真のすぐ下に表示された後、私は写真が撮られた場所の巨大なリストを表示したい。アドレスリストをどのように追加するのか教えてください。 – j2emanue

関連する問題