Android 活动退出时的RecyclerView动画
我正在制作一个包含recyclerview的应用程序。在活动开始时,recyclerview的项目从底部以动画显示(滑入)。单击项目时,它将导航到另一个活动。我希望项目在退出当前活动之前随动画消失(滑出)。在我的情况下,我希望项目下拉(滑出),然后开始新的活动。在退出活动之前,是否有办法将项目滑出 编辑:如下所示:Android 活动退出时的RecyclerView动画,android,animation,android-animation,android-recyclerview,Android,Animation,Android Animation,Android Recyclerview,我正在制作一个包含recyclerview的应用程序。在活动开始时,recyclerview的项目从底部以动画显示(滑入)。单击项目时,它将导航到另一个活动。我希望项目在退出当前活动之前随动画消失(滑出)。在我的情况下,我希望项目下拉(滑出),然后开始新的活动。在退出活动之前,是否有办法将项目滑出 编辑:如下所示: 您需要动画。 我已经在我的一个Android应用程序中使用了它。我将用爆炸动画来解释这一点 假设您有两个活动A(GridList活动)和B(DetailActivity)。 A-->
您需要动画。 我已经在我的一个Android应用程序中使用了它。我将用爆炸动画来解释这一点 假设您有两个活动A(GridList活动)和B(DetailActivity)。
A-->B 您可以通过这些简单的步骤实现这一点 1。启用内容转换 在
style.xml中添加此代码
<item name="android:windowContentTransitions">true</item>
3。有目的地开始活动
将此添加到活动A中以启动活动B。请注意,动画仅适用于SDK>20
上方。因此,如果您的min sdk较低,那么您也必须检查sdk。只要使用这个代码片段,您就可以很好地使用它了
public void startActivity(){
Intent i = new Intent(BlankActivity.this, AllImageActivity.class);
i.putStringArrayListExtra(MOVIE_LIST, movie.getImages());
if(Build.VERSION.SDK_INT>20)
{
ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(BlankActivity.this);
startActivity(i,options.toBundle());
}
else {
startActivity(i);
}
}
非常重要
您应该将setAnimation()
放在setContentView(R.layout.yourLayout)
之前,否则动画将无法工作。所以活动A应该是这样的
Activity A extends .... {
@Override
protected void onCreate(Bundle savedInstaceState)
{
super.onCreate(savedInstaceState);
setAnimation();
setContentView(R.layout.image_landing_layout);
startActivity(); // Use as you wish
.......
}
public void setAnimation(){
..........
}
我不是在任何IDE上写这篇文章的,所以不要介意任何语法错误。但这将把你推向正确的轨道。
你可以结帐。但你可能很难在那里找到它。希望这有帮助 你在使用ContentTransition吗?@RohitSingh不,我没有使用ContentTransition。我想知道如何删除recyclerview的项目(而不是删除!!!)。您应该附上一个示例Gif来清楚地解释您的问题。我做过一些类似的动画,但我不知道你到底想要什么。这是一个很好的动画,我喜欢它。但这不是我的答案,您的示例会分解活动(或活动上的其他动画)。我的意图是滑动所有项目并使其失效,这样我就可以隐藏回收视图!您可以使用此方法,因为它与动画类似,但不是精确的动画。我将添加更多示例动画。
Activity A extends .... {
@Override
protected void onCreate(Bundle savedInstaceState)
{
super.onCreate(savedInstaceState);
setAnimation();
setContentView(R.layout.image_landing_layout);
startActivity(); // Use as you wish
.......
}
public void setAnimation(){
..........
}