我想创建一个自定义列表视图像这样下面的图像。我正在创建一个聊天应用程序,该应用程序必须通过文本,图像和视频等,请参阅下面的图像。如何创建像这样的自定义ListView?
在这方面,当用户发送/接收的图像中聊天,如果他希望看到通过点击该图像旁边的按钮,如何移动到与该图像路径另一项活动(或)网址,用于显示完整图像,以及用户在图像上点击图像时必须显示快速浏览。同样的方式,如果这是视频,我必须得到该路径(或)网址才能正确播放视频。 如何区分列表项目取决于项目类型。
我想创建一个自定义列表视图像这样下面的图像。我正在创建一个聊天应用程序,该应用程序必须通过文本,图像和视频等,请参阅下面的图像。如何创建像这样的自定义ListView?
在这方面,当用户发送/接收的图像中聊天,如果他希望看到通过点击该图像旁边的按钮,如何移动到与该图像路径另一项活动(或)网址,用于显示完整图像,以及用户在图像上点击图像时必须显示快速浏览。同样的方式,如果这是视频,我必须得到该路径(或)网址才能正确播放视频。 如何区分列表项目取决于项目类型。
如果要为音频,图像和文本信息显示不同的行,则需要有3行布局,然后您将决定从CustomAdapter
的getView()
中返回哪行。有两种方法getViewTypeCount()
and getItemViewType()
适配器,这将有助于您的回收行显示在ListView
。
您将首先告诉您ListView
中将使用多少个布局,这些布局将使用getViewTypeCount()
,告知适配器将有多少行类型,然后检查数据模型中该位置存在的数据类型,然后返回查看类型从getItemViewType()
,因此getView()
将收到相关的回收视图(如果有的话)。
Here is my blog post关于使用9个补丁图像,它展示了视图的发送者和接收者类型,根据数据模型中特定位置的项目,可以应用图像和音频。
可以
ScrollView
并添加视图进去。我的choise是#2 - 创建排视图与所有可能的意见,然后决定什么可隐瞒的,在这种情况下,你可以节省时间,因为你不会有夸大你每一次的意见和你甚至可以用ViewHolder模式。
是否需要在getView()方法中填充所有行(xml)。 – 2013-02-12 11:56:24
是的。您需要根据数据模型中的消息类型从'getView()'中夸大它们。 – 2013-02-12 11:57:43