Android 滑动以删除自定义视图而不是列表项

Android 滑动以删除自定义视图而不是列表项,android,android-animation,Android,Android Animation,我想用一个非常简单的ImageView和一个绑定在Relativelayout中的Listview开发一个布局。现在为了获得更好的用户体验,我想通过向左或向右滑动来删除图像视图,就像android Gmail应用程序中删除电子邮件一样 在listview项目上实现它非常简单,有许多TUT和示例代码可以通过internet获得,包括官方的Google I/O动画对话,Chet Hasse在这里以非常好的方式进行了解释 但我不需要在listview项上实现它,而是希望以更通用的方式实现它。在我的例

我想用一个非常简单的ImageView和一个绑定在Relativelayout中的Listview开发一个布局。现在为了获得更好的用户体验,我想通过向左或向右滑动来删除图像视图,就像android Gmail应用程序中删除电子邮件一样

在listview项目上实现它非常简单,有许多TUT和示例代码可以通过internet获得,包括官方的Google I/O动画对话,Chet Hasse在这里以非常好的方式进行了解释

但我不需要在listview项上实现它,而是希望以更通用的方式实现它。在我的例子中,我希望ImageView项的行为与一个视图和另一个ListView相同。如下图所示

一旦ImageView项被删除,整个ListView就会顺利地出现在顶部

我已经尝试了很多方法来实现同样的目标,但都没有成功


请向我推荐姜饼及以上android操作系统支持的方法或一些示例。

您需要的就是这个库:

您可以使用以下代码:

如本文所述,该代码适用于android 14+

您可以使用NineodelDroids支持旧版本的Android,也可以使用Jake Wharton的端口:


我环顾四周,发现这很有帮助。

我实现了一个自定义视图组,该视图组包含一个子对象,并允许您在刷卡完成后通过回调将其拖动/抛向左侧。我的目的是让它像在回收站一样工作。使用animateLayoutChanges=true并在回调中将可见性设置为GONE,可以在线性布局中很好地工作


这里的要点:

如前所述,我不希望它用于listview中的项目,但在我的情况下,我希望它用于ImageView和listview等任意两种不同的视图。谢谢@GabrieleMariotti,但这只支持API级别14之后的项目,我需要与API级别9及更高版本相同的行为。只需使用NineodelDroids来支持旧版本的Android,如自述文件中所述。真棒@GabrieleMariotti非常感谢,也非常感谢Jack的伟大图书馆。加布里埃尔,请把所有这些都包括在一个答案中,你应该得到一个绿色的勾号。