繁体   English   中英

返回父级活动时如何开始动画

[英]How to start animation while returning to parent activity

单击动作栏中的图标时,我正在启动活动,并且正在制作动画以进行过渡。 这是代码:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();

    if (id == R.id.action_menu) {
        Intent intent = new Intent(NewsFeedActivity.this, RightHalfMenu.class);
        startActivity(intent);
        overridePendingTransition(R.anim.slide_in_left, R.anim.slide_out_left);
    }

现在,当我单击“后退箭头”按钮以返回到父活动时,我也想设置动画。 在默认的过渡中,父级活动逐渐消失,我想为“父级活动”的外观从右到左设置动画。

这是代码:

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    int id = item.getItemId();

    if(id == R.id.home){
        NavUtils.navigateUpFromSameTask(this);
        //for putting animation
        overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_right);

    }
    return super.onOptionsItemSelected(item);
}

在默认的过渡中,父级活动逐渐消失,我想为“父级活动”的外观从右到左设置动画。 我该怎么做?

PS:我已删除此代码

  if(id == R.id.home){
    NavUtils.navigateUpFromSameTask(this);
    //for putting animation
    overridePendingTransition(R.anim.slide_in_right,R.anim.slide_out_right);

}

甚至再按一下,它也会转到NewsFeedActivity,因为我已经在AndroidMinifest.xml中将NewsFeedActivity声明为RighHalf的父级活动。

<activity
    android:name=".activities.RightHalfMenu"
    android:parentActivityName=".activities.NewsFeedActivity">

    <!-- Parent activity meta-data to support 4.0 and lower -->
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".activities.NewsFeedActivity"/>
    >
</activity>

这不适用于

    NavUtils.navigateUpFromSameTask(this);

方法。 您必须像第一个代码片段一样通过Intent启动ParentActivity:

    Intent intent = new Intent(RightHalfMenu.this, NewsFeedActivity.class);
    startActivity(intent);
    overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_right);

或将NavUtils.navigateUpTo()方法与Intent fe一起使用:

    NavUtils.navigateUpTo(this, new Intent(RightHalfMenu.this, NewsFeedActivity.class));
    overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_right);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM