很抱歉误解了你的问题
如果您想创建一个像 toast 一样的弹出窗口并且持续时间取决于您,也许您可以尝试创建一个自定义视图,其中包含您想要烘烤的内容,之后您可以将主布局放置在框架布局中,然后每次用户触发您的自定义 toast 您可以将自定义视图添加到您的框架布局中,以便将其放置在您的主布局前面,并且对于淡入淡出动画,您可以使用它
Animation fadeIn = new AlphaAnimation(0, 1);
fadeIn.setInterpolator(new DecelerateInterpolator()); //add this
fadeIn.setDuration(1000);
Animation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new AccelerateInterpolator()); //and this
fadeOut.setStartOffset(1000);
fadeOut.setDuration(1000);
或者如果你想使用 XML
淡入
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:fromAlpha="0.0"
android:toAlpha= 1.0"
android:duration="1000"
android:repeatCount="infinite"
android:repeatMode="reverse"
/>
消退
<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
android:fromAlpha="1.0"
android:toAlpha="0.0"
android:duration="1000"
android:repeatCount="infinite"
android:repeatMode="reverse"
/>
在你可以使用的时候
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// FADE OUT THE POP UP/TOAST HERE
}
}, /*SET THE TIME HERE*/);
我希望这个答案对您来说足够清楚,如果您对我的回答仍有疑问,请随时在评论中提问:)