如何使用自己的“动作"按钮关闭小吃店? [英] How to dismiss a Snackbar using it's own Action button?

查看:85
本文介绍了如何使用自己的“动作"按钮关闭小吃店?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Android设计支持库现在包括对Snackbar的支持.

Android design support library now includes support for Snackbar.

我已经使用以下代码创建了一个代码:

I've used the following code to create one:

Snackbar.make(findViewById(R.id.root_layout), result, Snackbar.LENGTH_LONG)
        .setAction("Dismiss", new View.OnClickListener() {
            @Override
            public void onClick(View v) {

            }
        }).show();

可以通过轻扫来关闭小吃栏.但是,我也想使用它自己的操作按钮(使用setAction函数创建)将其关闭.

The snackbar can be dismissed by a swipe. However, I also want to dismiss it using its own Action Button (created using the setAction function).

但是似乎没有可用的功能可以做到这一点.

However there doesn't seem to be any function available that can do that.

推荐答案

对于Java,

.make方法返回一个Snackbar对象.通过使其成为final来保存该对象的实例.然后,在onClick()中,调用.dismiss:

The .make method returns a Snackbar object. Save an instance of that object by making it final. Then, in the onClick(), call .dismiss:

final Snackbar snackBar = Snackbar.make(findViewById(android.R.id.content), "Snackbar Message", Snackbar.LENGTH_LONG);

        snackBar.setAction("Action Message", new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Call your action method here
                snackBar.dismiss();
            }
        });
        snackBar.show();

对于Kotlin,

        Snackbar.make(
            findViewById(android.R.id.content),
            "Snackbar Message",
            Snackbar.LENGTH_INDEFINITE
        ).setAction("Action Message") {
            // Call action functions here
        }.show()

这篇关于如何使用自己的“动作"按钮关闭小吃店?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆