温馨提示×

android easyfloat如何设置进入退出动画

小樊
81
2024-12-03 07:04:11
栏目: 编程语言

EasyFloat 是一个 Android 悬浮窗库,它允许你在应用中创建悬浮窗口。要在 EasyFloat 中设置进入和退出动画,请按照以下步骤操作:

  1. 首先,确保你已经在项目的 build.gradle 文件中添加了 EasyFloat 的依赖项:
dependencies {
    implementation 'com.github.liaohuqiu:EasyFloat:2.1.0'
}
  1. 在你的布局文件中添加一个悬浮窗的根视图,例如:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.example.easyfloat.EasyFloatView
        android:id="@+id/easyFloatView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_margin="10dp" />
</RelativeLayout>
  1. 在你的 Activity 或 Fragment 中初始化 EasyFloat 实例,并设置进入和退出动画:
import com.example.easyfloat.EasyFloat;
import com.example.easyfloat.widget.EasyFloatView;

public class MainActivity extends AppCompatActivity {

    private EasyFloatView easyFloatView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        easyFloatView = findViewById(R.id.easyFloatView);

        // 设置进入动画
        easyFloatView.setEnterAnim(R.anim.slide_in_bottom);

        // 设置退出动画
        easyFloatView.setExitAnim(R.anim.slide_out_bottom);

        // 其他代码...
    }
}
  1. 在你的 res/anim 目录下创建两个动画文件:slide_in_bottom.xml 和 slide_out_bottom.xml。如果没有该目录,请创建一个。

slide_in_bottom.xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromYDelta="100%"
        android:toYDelta="0"
        android:duration="300"/>
</set>

slide_out_bottom.xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:fromYDelta="0"
        android:toYDelta="-100%"
        android:duration="300"/>
</set>

现在,当你启动应用时,悬浮窗将以 slide_in_bottom 动画进入,当用户点击悬浮窗外部时,悬浮窗将以 slide_out_bottom 动画退出。

0