(android) 小吃吧结束后如何关闭活动?

Posted

技术标签:

【中文标题】(android) 小吃吧结束后如何关闭活动?【英文标题】:(android) how to close an activity after snackbar ended? 【发布时间】:2021-02-27 01:55:37 【问题描述】:

我想在小吃店结束后关闭活动。 我有两个活动 A 和 B。A 活动是使用意图的开放 B 活动。 在 B 处,当小吃店在 3 秒内结束时,B 使用 finish() 自动关闭。 但是怎么知道小吃店已经结束了呢? 一旦snackbar上线,B活动马上结束,因为snackbar结束了。

B 活动中的代码。

Snackbar sb = Snackbar.make(wc, "SAVE", Snackbar.LENGTH_SHORT).setDuration(3000);
sb.show();
finish();

请帮助我。 谢谢。

【问题讨论】:

【参考方案1】:

像这样在您的小吃栏中添加回调:

sb.addCallback(new Snackbar.Callback() 

    @Override
    public void onDismissed(Snackbar snackbar, int event) 
        if (event == Snackbar.Callback.DISMISS_EVENT_TIMEOUT) 
            // finish your activity here
        
    

    @Override
    public void onShown(Snackbar snackbar) 
        ...
    
);

【讨论】:

谢谢。我可以提问吗?在您的代码中, sb.show() 应该位于哪里?在 onShow() 中?或者..在sb.addCallback前面? 添加回调后,SnackBar 显示如下:Snackbar sb = Snackbar.make(wc, "SAVE", Snackbar.LENGTH_SHORT).setDuration(3000); sb.addCallback(); sb.show(); wc 是布局文件中的根视图吗?

以上是关于(android) 小吃吧结束后如何关闭活动?的主要内容,如果未能解决你的问题,请参考以下文章

在 NGXS 操作中调用后尝试关闭材料小吃吧不起作用

Angular Material - 不关闭 Material 小吃吧

如何在全局侦听器中实现小吃吧?

android 怎么调用强制关闭

是否有任何可能的方法可以在没有任何操作的情况下在互联网连接时自动关闭 android 小吃店(LENGTH_INDEFINITE)?

为啥使用 mapview 看不到 android 小吃吧?