How can I be notified when a Snackbar has dismissed itself?

前端 未结 12 1547
陌清茗
陌清茗 2020-12-01 00:24

I\'m using a Snackbar from the com.android.support:design:22.2.0 library. I\'m using it to undo deletions. To make my life easier, I\'m going to make the UI loo

12条回答
  •  天命终不由人
    2020-12-01 01:24

    onDismissed is also called when the action Text is clicked for that reason need to put one condition like

    event == Snackbar.Callback.DISMISS_EVENT_TIMEOUT
    

    And now new code is look like below.

    final Snackbar snackBar = Snackbar.make(findViewById(R.id.root_layout), result, Snackbar.LENGTH_LONG);
    
    snackbar.addCallback(new Snackbar.Callback() {
    
    @Override
    public void onDismissed(Snackbar snackbar, int event) {
     if (event == Snackbar.Callback.DISMISS_EVENT_TIMEOUT) {
            // Snackbar closed on its own
        }  
    }
    
    @Override
    public void onShown(Snackbar snackbar) {
    ...
    }
    });
    snackBar.show();
    

提交回复
热议问题