1. 程式人生 > >安卓執行緒切換優雅的寫法

安卓執行緒切換優雅的寫法

private Handler mainHandler = new Handler();
    private Runnable mDismissAction = this::dismissDialog;
    private Context curContext;

    public void switchThread(Context context){
        this.curContext = context;

        if (Looper.myLooper() == mainHandler.getLooper()) {
            mainHandler.post(mDismissAction);
        } else {
            mainHandler.post(mDismissAction);
        }
    }

    void dismissDialog() {
        PayPasswordDialog.getInstance(curContext).dismessDialog();
        UnbindingDialog.getInstance(curContext).dismiss();
        VerifyCodeDialog.getInstance(curContext).dismiss();
        SignInDialog.getInstance(curContext).dismiss();
        WaitForloadingDialog.dismissDialog();
        DropListTitleView.getInstance(curContext).dismissPopupWindow();
        ZcbaoTransactionDetailsTitleView.getInstance(curContext).dismissPopupWindow();
    }