繁体   English   中英

制作“从底部滑动”按钮(类似于小吃店)(Android)

[英]Making “slide from bottom” button (similar to snackbar) (Android)

有一些我想做的事,但不知道如何做……那是一个由某些东西触发的按钮,它可以从屏幕底部滑动到某个位置。 非常类似于小吃店的显示方式,不同之处在于它保持原位而不是消失,并且具有“可单击”的属性。 这不是从底部拖动面板,而是由某些东西自动触发的滑动面板。

我该怎么做?

听起来像是沿y轴的相当简单的动画,其起始值与屏幕的高度匹配(这样它就在屏幕外呈现),无论最终值是多少。 下面的代码来自内存,但是应该可以工作。

抓住屏幕高度:

int getScreenHeight() {

    DisplayMetrics displaymetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displaymetrics);
    return displaymetrics.heightPixels;

}

并为视图设置动画(在这种情况下,为屏幕总高度的80%):

void animateOnScreen(View view) {

    final int screenHeight = getScreenHeight();
    ObjectAnimator animator = ObjectAnimator.ofFloat(view, "y", screenHeight, (screenHeight * 0.8F));
    animator.setInterpolator(new DecelerateInterpolator());
    animator.start();

}

将视图向下滑动一定距离:

view.animate().translationY(distance);

您可以稍后将“视图”滑动回其原始位置,如下所示:

view.animate().translationY(0);

暂无
暂无

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

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