From ed05076dafa5cb3dfd9cb8a262354c9f70af3ed7 Mon Sep 17 00:00:00 2001 From: zhangyuanzhen Date: Mon, 13 Jan 2020 20:56:26 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AF=BC=E8=88=AA=E6=8F=90?= =?UTF-8?q?=E7=A4=BA=E7=AA=97=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/mogo-module-extensions/build.gradle | 2 +- .../extensions/dialog/NaviNoticeDialog.java | 73 +++++++++++++++++++ .../extensions/entrance/EntranceFragment.java | 4 +- .../res/drawable/shape_react_blue_grident.xml | 9 +++ .../res/drawable/shape_react_gray_grident.xml | 9 +++ .../main/res/layout/dialog_navi_notice.xml | 57 +++++++++++++++ 6 files changed, 152 insertions(+), 2 deletions(-) create mode 100644 modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/dialog/NaviNoticeDialog.java create mode 100644 modules/mogo-module-extensions/src/main/res/drawable/shape_react_blue_grident.xml create mode 100644 modules/mogo-module-extensions/src/main/res/drawable/shape_react_gray_grident.xml create mode 100644 modules/mogo-module-extensions/src/main/res/layout/dialog_navi_notice.xml diff --git a/modules/mogo-module-extensions/build.gradle b/modules/mogo-module-extensions/build.gradle index 7ec6c89d89..5c2e75d70a 100644 --- a/modules/mogo-module-extensions/build.gradle +++ b/modules/mogo-module-extensions/build.gradle @@ -36,7 +36,7 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - + implementation rootProject.ext.dependencies.androidxcardview implementation rootProject.ext.dependencies.androidxappcompat implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.arouter diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/dialog/NaviNoticeDialog.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/dialog/NaviNoticeDialog.java new file mode 100644 index 0000000000..594bd06e89 --- /dev/null +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/dialog/NaviNoticeDialog.java @@ -0,0 +1,73 @@ +package com.mogo.module.extensions.dialog; + +import android.app.Dialog; +import android.content.Context; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.RelativeLayout; +import android.widget.TextView; +import androidx.annotation.NonNull; +import com.alibaba.android.arouter.launcher.ARouter; +import com.mogo.module.extensions.R; +import com.mogo.service.MogoServicePaths; +import com.mogo.service.map.IMogoMapService; +import com.mogo.utils.logger.Logger; + +/** + * @author lixiaopeng + * @description 通用分享dialog + * @since 2020-01-10 + */ +public class NaviNoticeDialog extends Dialog implements View.OnClickListener { + private TextView txtOk; + private Context mContext; + private View tvCancel; + private IMogoMapService mMogoMapService; + + public NaviNoticeDialog(@NonNull Context context) { + super(context); + this.mContext = context; + mMogoMapService = (IMogoMapService) ARouter.getInstance() + .build(MogoServicePaths.PATH_SERVICES_MAP) + .navigation(getContext()); + getWindow().setBackgroundDrawableResource(android.R.color.transparent); + } + + public NaviNoticeDialog(@NonNull Context context, int themeResId) { + super(context, R.style.Theme_AppCompat_Dialog); + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + initView(); + initListener(); + } + + private void initView() { + setContentView(R.layout.dialog_navi_notice); + txtOk = findViewById(R.id.tv_dialog_ok); + tvCancel = findViewById(R.id.tv_dialog_cancel); + } + + + private void initListener() { + txtOk.setOnClickListener(this); + tvCancel.setOnClickListener(this); + } + + + @Override + public void onClick(View view) { + int id = view.getId(); + if (id == R.id.tv_dialog_ok) { + mMogoMapService.getNavi(getContext()).stopNavi(); + } else if (id == R.id.tv_dialog_cancel) { + + } + dismiss(); + } + + +} diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index 813feb9a65..c9a0d73936 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -27,6 +27,7 @@ import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.module.common.MogoModulePaths; import com.mogo.module.extensions.ExtensionsModuleConst; import com.mogo.module.extensions.R; +import com.mogo.module.extensions.dialog.NaviNoticeDialog; import com.mogo.module.extensions.navi.NaviInfoView; import com.mogo.module.share.ShareControl; import com.mogo.module.share.dialog.LaucherShareDialog; @@ -132,7 +133,8 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent mExitNavi.setOnClickListener( view -> { if ( mMogoNavi != null ) { if ( mIsLock ) { - mMogoNavi.stopNavi(); + NaviNoticeDialog naviNoticeDialog = new NaviNoticeDialog(getContext()); + naviNoticeDialog.show(); } else { mMApUIController.recoverLockMode(); } diff --git a/modules/mogo-module-extensions/src/main/res/drawable/shape_react_blue_grident.xml b/modules/mogo-module-extensions/src/main/res/drawable/shape_react_blue_grident.xml new file mode 100644 index 0000000000..804e5a8de3 --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/drawable/shape_react_blue_grident.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/modules/mogo-module-extensions/src/main/res/drawable/shape_react_gray_grident.xml b/modules/mogo-module-extensions/src/main/res/drawable/shape_react_gray_grident.xml new file mode 100644 index 0000000000..377483211d --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/drawable/shape_react_gray_grident.xml @@ -0,0 +1,9 @@ + + + + + + diff --git a/modules/mogo-module-extensions/src/main/res/layout/dialog_navi_notice.xml b/modules/mogo-module-extensions/src/main/res/layout/dialog_navi_notice.xml new file mode 100644 index 0000000000..584dff5c93 --- /dev/null +++ b/modules/mogo-module-extensions/src/main/res/layout/dialog_navi_notice.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + \ No newline at end of file