Snackbar onDismissed()回调在破坏活动时不会出现

时间:2017-05-20 09:17:55

标签: android android-snackbar snackbar

我正在活动中创建一个小吃吧(定义了解除小吃栏的回调)和当小吃栏仍然显示我正在旋转设备

理想情况下,应该在销毁活动时调用onDismissed(),并为新设备方向创建新活动。

但当前活动被破坏时,onDismissed()回调才会出现。只有在创建新设备配置的新活动之后才会出现。

以下是代码段和日志:

public class MainActivity extends AppCompatActivity {

private String LOG_TAG = MainActivity.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Log.d(LOG_TAG,"MainActivity : onCreate");

    Button button = (Button)findViewById(R.id.bt_snack);

    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Snackbar snackbar = Snackbar.make(v,"Snackbar!",Snackbar.LENGTH_LONG)
                    .addCallback(new BaseTransientBottomBar.BaseCallback<Snackbar>() {
                        @Override
                        public void onDismissed(Snackbar transientBottomBar, int event) {
                            super.onDismissed(transientBottomBar, event);
                            Log.d(LOG_TAG,"Snackbar dismissed!");
                        }
                    });
            snackbar.show();
        }
    });
}

日志:

  

05-20 04:16:42.299 12353-12353 / com.gururaj.snackbartest D / MainActivity:MainActivity:onCreate
  05-20 04:16:42.330 12353-12353 / com.gururaj.snackbartest D / MainActivity:Snackbar被解雇了!

有人可以指出这里出了什么问题吗?

0 个答案:

没有答案