listview为不同的item设置不同的点击事件

偶尔看见陌陌有这个功能,系统机器人发来不同的内容点击后有不同的响应,如发来的是有新表情可以使用的通知,点击后就进入更新表情页面;发送生日祝福语音,就播放声音,发来的是位置图片,点击后就跳转到地图定位页面。很久以前没搞懂怎么实现,现在想想其实很简单,总结一下。这跟微信和QQ里的聊天内容有语音、图片、文字,点击后能播放语音、查看大图,各个item有不同的响应是一个道理。

首先,每条message看做是一个对象,有不同的类型属性,将每条消息附带上这个属性,然后item的通用click事件里先获取这个属性,然后根据属性做不同响应。当然也可以根据消息内容里是否含有预设的关键字来做不同响应,适合系统发出防骗提示之类的。

你可能感兴趣的:(listview为不同的item设置不同的点击事件)