如何为像Feed这样的FaceBook生成ListView适配器的UI

时间:2014-03-14 09:42:31

标签: android listview video adapter android-arrayadapter

如何创建Arraylist adapter,根据view中的flag更改LISTVIEW,标记可以为IMAGEIMAGETEXTVIDEOVIDEOTEXTTEXT

例如在facebook帖子中,1。如果朋友发布文字,list row只会包含带有他姓名的文字 2.如果朋友发布Image,则列表行将仅包含带有其姓名的图像 3.如果朋友提出Video,则列表行将只包含带有其姓名的视频,并且只包含视频onClick(),  在外部播放器中播放该视频

  1. Flag =文字。要附加的视图是text.xml
  2. 标志=视频,要附加的视图为video.xml
  3. 标志=图片,要附加的视图为image.xml
  4. 对此有任何帮助。

    提前致谢...

3 个答案:

答案 0 :(得分:1)

覆盖适配器中的getItemViewType(int position)和getViewTypeCount()方法 从getView()根据它来查看视图。在你的情况下编写像

这样的方法
 @Override
public int getItemViewType(int position) {
        if(list.get(position).flag == text)
            return 0;
         else if(list.get(position).flag == image) 
            return 1;
         else
            return 2;         
}

@Override
public int getViewTypeCount() {
    return 3;
}    

答案 1 :(得分:1)

我不是很确定,但我的理念是首先创建一个行的布局,可以容纳你想要显示的所有东西(图像,视频,文本等)。并且如果一个东西不存在则使这个布局成为一种方式然后它自动包裹(意味着如果视频不存在那么视频空间将不存在)。 现在创建每个列表行的json并将其传递给List of Adapter。然后覆盖
的getView()方法 适配器并解析json并根据您的布局显示。

答案 2 :(得分:1)

我为此链接中使用的Custom Adapter实施了类似的ListView,也使用了ViewHolders

检查此链接

http://www.androidhive.info/2014/06/android-facebook-like-custom-listview-feed-using-volley/