📜  如何在Android中的活动之间添加CrossFade动画?

📅  最后修改于: 2021-05-13 14:47:11             🧑  作者: Mango

可以说Android动画是实现android应用程序中更好的用户界面和用户体验的最重要因素。在有关GeeksforGeeks的一系列文章中,这些文章旨在为应用程序提供更好的UI和UX,这也将成为其中的一个。在本文中,我们将知道如何在android中的两个活动之间添加淡入淡出动画。 CrossFading的含义是两个活动之间的平稳过渡。通常,它意味着淡出一个,而淡出另一种活动。它创建了一个平稳的过渡,并且在很短的时间内,用户将对这两项活动有感觉。这是我们将在活动之间创建的相同类型动画的示例。请注意,我们将同时使用Java和Kotlin语言来实现此项目。

Android中活动之间的CrossFade动画

分步实施

步骤1:创建一个新项目

要在Android Studio中创建新项目,请参阅如何在Android Studio中创建/启动新项目。您可以根据自己的选择选择语言,因为在这里,我们提供了kotlinJava的代码。

第2步:首先进入编码部分,您必须做一些准备工作

  • 修改字符串.xml文件:
XML

    GFG App
    GO TO MAIN ACTIVITY
    GO TO SECOND ACTIVITY


XML


    #00AC28
    #09d639
    #03DAC5


XML


  
    


XML


  
    


XML


XML


Java
public void goToSecondActivity (View view) {
        Intent intent = new Intent(MainActivity.this, SecondActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }


Kotlin
fun goToSecondActivity(view: View?) {
        val intent = Intent(this@MainActivity, SecondActivity::class.java)
        startActivity(intent)
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out)
    }


Java
public void goToMainActivity (View view) {
        Intent intent = new Intent(SecondActivity.this, MainActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }


Kotlin
fun goToMainActivity(view: View?) {
        val intent = Intent(this@SecondActivity, MainActivity::class.java)
        startActivity(intent)
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out)
    }


  • 修改colors.xml文件:

XML格式



    #00AC28
    #09d639
    #03DAC5

步骤3:建立另一个空白的活动

确保在屏幕的左上角选择了Android作为项目结构。然后导航到Java/ your_package_name 。现在,右键单击您的包名称,然后在此处选择“新建”,然后选择“活动”和“空活动”。

只需给它一个您选择的名称,就像我们给它提供SecondActivity一样,然后单击完成。

步骤4:使用布局文件

转到res / layout / activity_second ,然后粘贴以下代码。在这里,我们使用带有按钮的ConstraintLayout来切换到另一个活动。

以下是activity_second.xml文件的代码

XML格式



  
    

另外,导航到res / layout / activity_main并删除所有默认代码,然后粘贴以下代码。以下是activity_main.xml文件的代码

XML格式



  
    

步骤5:使用动画文件

请参考如何在Android Studio中创建动画文件夹和动画文件以创建动画文件夹和动画文件。我们创建了两个动画文件,并将其命名为fade_infade_out。现在,从fade_in中删除所有默认代码,然后粘贴以下代码。以下是fade_in.xml文件的代码

XML格式



以下是fade_out.xml文件的代码

XML格式



步骤6:使用MainActivity文件

只需在onCreate()方法之后将以下代码添加到您的MainActivity类中即可。这是转到SecondActivity的代码,我们在它们之间设置动画。

Java

public void goToSecondActivity (View view) {
        Intent intent = new Intent(MainActivity.this, SecondActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }

科特林

fun goToSecondActivity(view: View?) {
        val intent = Intent(this@MainActivity, SecondActivity::class.java)
        startActivity(intent)
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out)
    }

步骤7:使用SecondActivity文件

另外,在onCreate()方法之后,在SecondActivity中添加以下代码。

Java

public void goToMainActivity (View view) {
        Intent intent = new Intent(SecondActivity.this, MainActivity.class);
        startActivity(intent);
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out);
    }

科特林

fun goToMainActivity(view: View?) {
        val intent = Intent(this@SecondActivity, MainActivity::class.java)
        startActivity(intent)
        overridePendingTransition(R.anim.fade_in, R.anim.fade_out)
    }

输出:

GitHub链接: https : //github.com/shivamparashar165/crossfade_android_anim