[6.7.0]
[fea] [登录页面、统一弹窗]
@@ -1,35 +1,49 @@
|
||||
package com.mogo.och.biz.login.ui
|
||||
|
||||
import android.animation.Animator
|
||||
import android.animation.Animator.AnimatorListener
|
||||
import android.animation.AnimatorSet
|
||||
import android.animation.ObjectAnimator
|
||||
import android.graphics.Rect
|
||||
import android.os.SystemClock
|
||||
import android.view.*
|
||||
import android.view.ViewTreeObserver.OnGlobalLayoutListener
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import android.view.animation.DecelerateInterpolator
|
||||
import android.view.animation.LinearInterpolator
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.widget.addTextChangedListener
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.commons.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.function.hmi.ui.setting.ToggleDebugView
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.util.ActivityUtils
|
||||
import com.mogo.eagle.core.utilcode.util.BarUtils
|
||||
import com.mogo.eagle.core.utilcode.util.KeyboardUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.biz.BuildConfig
|
||||
import com.mogo.och.biz.R
|
||||
import com.mogo.och.biz.login.callback.ILoginViewCallback
|
||||
import com.mogo.och.biz.login.presenter.LoginPresenter
|
||||
import com.shuyu.gsyvideoplayer.builder.GSYVideoOptionBuilder
|
||||
import com.shuyu.gsyvideoplayer.listener.GSYSampleCallBack
|
||||
import com.shuyu.gsyvideoplayer.utils.Debuger
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_acbtn_login
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_ace_login_phone_value
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_acet_phone_code_value
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_actv_login_get_code
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_actv_login_show_sn
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_actv_welcome_login_title
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_cl_driver_main
|
||||
import kotlinx.android.synthetic.main.biz_login_view.biz_login_svp
|
||||
import kotlinx.android.synthetic.main.biz_login_view.bv_switch_business
|
||||
import kotlinx.android.synthetic.main.biz_login_view.cl_login_info
|
||||
import kotlinx.android.synthetic.main.biz_login_view.eiv_Info
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
|
||||
|
||||
/**
|
||||
@@ -38,7 +52,10 @@ import kotlinx.android.synthetic.main.biz_login_view.eiv_Info
|
||||
*/
|
||||
class LoginFragment : MvpFragment<LoginFragment?, LoginPresenter?>(), ILoginViewCallback {
|
||||
|
||||
private var biz_cl_driver_main: ConstraintLayout? = null
|
||||
private val gsyVideoOptionBuilder = GSYVideoOptionBuilder()
|
||||
|
||||
private var showLoginInfoAnimator1: ObjectAnimator? = null
|
||||
private var showLoginInfoAnimator2: ObjectAnimator? = null
|
||||
|
||||
private var onlayoutListener: OnGlobalLayoutListener? = object : OnGlobalLayoutListener {
|
||||
override fun onGlobalLayout() {
|
||||
@@ -71,7 +88,74 @@ class LoginFragment : MvpFragment<LoginFragment?, LoginPresenter?>(), ILoginView
|
||||
|
||||
override fun initViews() {
|
||||
CallerLogger.d(TAG, "init")
|
||||
biz_cl_driver_main = mRootView.findViewById(R.id.biz_cl_driver_main)
|
||||
|
||||
context?.let {
|
||||
val videoUrl:String
|
||||
if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) {
|
||||
//aciv_login_bg.setImageResource(R.drawable.biz_login_bg_taxi_start)
|
||||
biz_login_svp.setBackgroundResource(R.drawable.biz_login_bg_taxi_start)
|
||||
videoUrl = "android.resource://" + it.packageName + "/" + R.raw.biz_login_taxi_bg
|
||||
}else{
|
||||
//aciv_login_bg.setImageResource(R.drawable.biz_login_bg_bus_start)
|
||||
biz_login_svp.setBackgroundResource(R.drawable.biz_login_bg_bus_start)
|
||||
videoUrl = "android.resource://" + it.packageName + "/" + R.raw.biz_login_bus_bg
|
||||
}
|
||||
Debuger.enable()
|
||||
|
||||
biz_login_svp.setIsTouchWiget(false)
|
||||
biz_login_svp.setIsTouchWigetFull(false)
|
||||
biz_login_svp.enableshowProgressDialog = false
|
||||
biz_login_svp.enableDoubleClick = false
|
||||
gsyVideoOptionBuilder.setUrl(videoUrl)
|
||||
.setCacheWithPlay(false)
|
||||
.setPlayTag("TaxiPassengerArrivedView")
|
||||
.build(biz_login_svp)
|
||||
|
||||
biz_login_svp.setVideoAllCallBack(object : GSYSampleCallBack() {
|
||||
override fun onAutoComplete(url: String?, vararg objects: Any?) {
|
||||
if (AppIdentityModeUtils.isT1T2(FunctionBuildConfig.appIdentityMode)) {
|
||||
biz_login_svp?.setBackgroundResource(R.drawable.biz_login_bg_taxi_end)
|
||||
}else{
|
||||
biz_login_svp?.setBackgroundResource(R.drawable.biz_login_bg_bus_end)
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
if (showLoginInfoAnimator1 == null) {
|
||||
showLoginInfoAnimator1 = ObjectAnimator.ofFloat(cl_login_info, "alpha", 0f, 1f)
|
||||
showLoginInfoAnimator1?.interpolator = LinearInterpolator()
|
||||
}
|
||||
if (showLoginInfoAnimator2 == null) {
|
||||
val dp2px = AutoSizeUtils.dp2px(AbsMogoApplication.getApp(), -50f)
|
||||
showLoginInfoAnimator2 = ObjectAnimator.ofFloat(cl_login_info, "translationY", 0f, dp2px.toFloat())
|
||||
showLoginInfoAnimator2?.interpolator = DecelerateInterpolator()
|
||||
}
|
||||
UiThreadHandler.postDelayed({
|
||||
val animatorSet = AnimatorSet()
|
||||
animatorSet.playTogether(showLoginInfoAnimator1, showLoginInfoAnimator2)
|
||||
animatorSet.duration = 500
|
||||
animatorSet.addListener(object :AnimatorListener{
|
||||
override fun onAnimationStart(animation: Animator) {
|
||||
cl_login_info.visibility = View.VISIBLE
|
||||
}
|
||||
|
||||
override fun onAnimationEnd(animation: Animator) {
|
||||
|
||||
}
|
||||
|
||||
override fun onAnimationCancel(animation: Animator) {
|
||||
|
||||
}
|
||||
|
||||
override fun onAnimationRepeat(animation: Animator) {
|
||||
|
||||
}
|
||||
|
||||
})
|
||||
animatorSet.start()
|
||||
},2_000,UiThreadHandler.MODE.QUEUE)
|
||||
}
|
||||
|
||||
inputPhoneNormal()
|
||||
initBg()
|
||||
initListener()
|
||||
@@ -159,7 +243,7 @@ class LoginFragment : MvpFragment<LoginFragment?, LoginPresenter?>(), ILoginView
|
||||
R.color.taxi_EF262C
|
||||
)
|
||||
)
|
||||
biz_ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_error)
|
||||
biz_ace_login_phone_value.setBackgroundResource(R.drawable.biz_login_phone_error)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -171,7 +255,7 @@ class LoginFragment : MvpFragment<LoginFragment?, LoginPresenter?>(), ILoginView
|
||||
R.color.taxi_878890
|
||||
)
|
||||
)
|
||||
biz_ace_login_phone_value.setBackgroundResource(R.drawable.taxi_login_phone_normal)
|
||||
biz_ace_login_phone_value.setBackgroundResource(R.drawable.biz_login_phone_normal)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -218,6 +302,7 @@ class LoginFragment : MvpFragment<LoginFragment?, LoginPresenter?>(), ILoginView
|
||||
biz_cl_driver_main?.viewTreeObserver?.addOnGlobalLayoutListener(onlayoutListener)
|
||||
super.onResume()
|
||||
CallerLogger.d(TAG, "onResume")
|
||||
biz_login_svp.startPlayLogic()
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
|
||||
|
After Width: | Height: | Size: 189 KiB |
|
After Width: | Height: | Size: 144 KiB |
|
After Width: | Height: | Size: 173 KiB |
|
After Width: | Height: | Size: 109 KiB |
|
Before Width: | Height: | Size: 75 KiB |
BIN
OCH/common/biz/src/main/res/drawable-nodpi/biz_login_pop_bg.webp
Normal file
|
After Width: | Height: | Size: 65 KiB |
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/biz_login_enable" android:state_enabled="true"/>
|
||||
<item android:drawable="@drawable/biz_login_unenable" android:state_enabled="false"/>
|
||||
</selector>
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="@dimen/dp_50"/>
|
||||
<gradient android:startColor="@color/biz_login_19FFF5" android:endColor="@color/biz_login_1970FF" android:angle="280"/>
|
||||
</shape>
|
||||
@@ -3,5 +3,5 @@
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="13.33dp"/>
|
||||
<solid android:color="@color/taxi_14FF0000"/>
|
||||
<stroke android:color="@color/taxi_FF0000" android:width="2dp"/>
|
||||
<stroke android:color="@color/biz_login_4DFFFFFF" android:width="2dp"/>
|
||||
</shape>
|
||||
@@ -2,6 +2,7 @@
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="13.33dp"/>
|
||||
<solid android:color="@android:color/transparent"/>
|
||||
<stroke android:color="@color/taxi_666666" android:width="2dp"/>
|
||||
<solid android:color="@color/biz_login_4D000000"/>
|
||||
|
||||
<stroke android:color="@color/biz_login_4DFFFFFF" android:width="2dp"/>
|
||||
</shape>
|
||||
@@ -6,126 +6,148 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/aciv_login_bg"
|
||||
android:src="@drawable/biz_login_bg"
|
||||
android:scaleType="fitXY"
|
||||
<com.mogo.eagle.core.widget.media.video.SimpleVideoPlayer
|
||||
android:id="@+id/biz_login_svp"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/aciv_login_bg_pop"
|
||||
android:src="@drawable/biz_login_pop_bg"
|
||||
android:layout_marginTop="@dimen/dp_66"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:scaleType="fitXY"
|
||||
android:layout_width="1071dp"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/biz_actv_welcome_login_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="162dp"
|
||||
android:layout_marginTop="269dp"
|
||||
android:text="@string/module_och_taxi_login_title"
|
||||
android:textColor="@color/taxi_111533"
|
||||
android:textSize="70dp"
|
||||
android:layout_height="match_parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_login_phone_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="159dp"
|
||||
android:text="@string/module_och_taxi_login_get_phone_title"
|
||||
android:textColor="@color/taxi_878890"
|
||||
android:textSize="40dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_actv_welcome_login_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/biz_actv_welcome_login_title" />
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_login_info"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:background="@drawable/biz_login_pop_bg"
|
||||
android:layout_marginTop="@dimen/dp_286"
|
||||
android:layout_marginStart="@dimen/dp_70"
|
||||
android:visibility="gone"
|
||||
android:layout_width="1042dp"
|
||||
android:layout_height="1169dp">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatEditText
|
||||
android:id="@+id/biz_ace_login_phone_value"
|
||||
android:layout_width="760dp"
|
||||
android:layout_height="136dp"
|
||||
android:layout_marginTop="40dp"
|
||||
android:background="@drawable/taxi_login_phone_normal"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:maxLength="11"
|
||||
android:hint="@string/module_och_taxi_login_phone_hint_text"
|
||||
android:inputType="numberSigned"
|
||||
android:paddingStart="30dp"
|
||||
android:textColor="@color/taxi_111533"
|
||||
android:textSize="40dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_login_phone_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_login_phone_title"
|
||||
/>
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guideline_h_top"
|
||||
app:layout_constraintGuide_begin="@dimen/dp_22"
|
||||
android:orientation="horizontal"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_phone_code_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="75dp"
|
||||
android:text="@string/module_och_taxi_login_get_code_title"
|
||||
android:textColor="@color/taxi_878890"
|
||||
android:textSize="40dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
app:layout_constraintTop_toBottomOf="@+id/biz_ace_login_phone_value" />
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/guideline_v_left"
|
||||
app:layout_constraintGuide_begin="@dimen/dp_42"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<View
|
||||
android:id="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_phone_code_title"
|
||||
android:background="@drawable/taxi_login_phone_normal"
|
||||
android:layout_width="760dp"
|
||||
android:layout_height="136dp"
|
||||
android:layout_marginTop="40dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatEditText
|
||||
android:id="@+id/biz_acet_phone_code_value"
|
||||
app:layout_constraintTop_toTopOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/v_phone_code_bg"
|
||||
tools:text="18811539480"
|
||||
android:maxLines="1"
|
||||
android:textColor="@color/taxi_111533"
|
||||
android:background="@null"
|
||||
android:inputType="numberSigned"
|
||||
android:gravity="center_vertical"
|
||||
android:imeOptions="actionDone"
|
||||
android:paddingStart="30dp"
|
||||
android:maxLength="4"
|
||||
android:layout_width="518dp"
|
||||
android:layout_height="136dp"/>
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/biz_actv_welcome_login_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_99"
|
||||
android:layout_marginTop="@dimen/dp_104"
|
||||
android:text="@string/module_och_taxi_login_title"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="70dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/guideline_v_left"
|
||||
app:layout_constraintTop_toTopOf="@+id/guideline_h_top" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_login_phone_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_50"
|
||||
android:text="@string/module_och_taxi_login_get_phone_title"
|
||||
android:textColor="@color/biz_login_C6C6C6"
|
||||
android:textSize="@dimen/dp_40"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_actv_welcome_login_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/biz_actv_welcome_login_title" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatEditText
|
||||
android:id="@+id/biz_ace_login_phone_value"
|
||||
android:layout_width="@dimen/dp_760"
|
||||
android:layout_height="@dimen/dp_136"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:background="@drawable/biz_login_phone_normal"
|
||||
android:gravity="center_vertical"
|
||||
android:maxLines="1"
|
||||
android:maxLength="11"
|
||||
android:hint="@string/module_och_taxi_login_phone_hint_text"
|
||||
android:textColorHint="@color/white"
|
||||
android:inputType="numberSigned"
|
||||
android:paddingStart="30dp"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/dp_40"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_login_phone_title"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_login_phone_title"
|
||||
/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_phone_code_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_50"
|
||||
android:text="@string/module_och_taxi_login_get_code_title"
|
||||
android:textColor="@color/biz_login_C6C6C6"
|
||||
android:textSize="40dp"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
app:layout_constraintTop_toBottomOf="@+id/biz_ace_login_phone_value" />
|
||||
|
||||
<View
|
||||
android:id="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_phone_code_title"
|
||||
android:background="@drawable/biz_login_phone_normal"
|
||||
android:layout_width="@dimen/dp_760"
|
||||
android:layout_height="@dimen/dp_136"
|
||||
android:layout_marginTop="30dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatEditText
|
||||
android:id="@+id/biz_acet_phone_code_value"
|
||||
app:layout_constraintTop_toTopOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/v_phone_code_bg"
|
||||
tools:text="1881"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:maxLines="1"
|
||||
android:textColor="@color/white"
|
||||
android:textColorHint="@color/white"
|
||||
android:background="@null"
|
||||
android:inputType="numberSigned"
|
||||
android:gravity="center_vertical"
|
||||
android:imeOptions="actionDone"
|
||||
android:paddingStart="30dp"
|
||||
android:maxLength="4"
|
||||
android:layout_width="518dp"
|
||||
android:layout_height="136dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/biz_actv_login_get_code"
|
||||
app:layout_constraintTop_toTopOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintEnd_toEndOf="@+id/v_phone_code_bg"
|
||||
android:paddingEnd="30dp"
|
||||
android:textSize="40dp"
|
||||
android:textColor="@color/biz_login_878890"
|
||||
android:gravity="start|center_vertical"
|
||||
android:text="@string/module_och_taxi_login_get_code"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="136dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatButton
|
||||
android:id="@+id/biz_acbtn_login"
|
||||
app:layout_constraintTop_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
android:background="@drawable/biz_login_bg_selector"
|
||||
android:layout_marginTop="118dp"
|
||||
android:textColor="@android:color/white"
|
||||
android:text="@string/module_och_taxi_login_btn"
|
||||
android:gravity="center"
|
||||
android:textSize="40dp"
|
||||
android:layout_width="760dp"
|
||||
android:layout_height="136dp"/>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/biz_actv_login_get_code"
|
||||
app:layout_constraintTop_toTopOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintEnd_toEndOf="@+id/v_phone_code_bg"
|
||||
android:paddingEnd="30dp"
|
||||
android:textSize="40dp"
|
||||
android:textColor="@color/taxi_login_get_code_text_color"
|
||||
android:gravity="start|center_vertical"
|
||||
android:text="@string/module_och_taxi_login_get_code"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="136dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatButton
|
||||
android:id="@+id/biz_acbtn_login"
|
||||
app:layout_constraintTop_toBottomOf="@+id/v_phone_code_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/biz_ace_login_phone_value"
|
||||
android:background="@drawable/taxi_login_bg_selector"
|
||||
android:layout_marginTop="118dp"
|
||||
android:textColor="@android:color/white"
|
||||
android:text="@string/module_och_taxi_login_btn"
|
||||
android:gravity="center"
|
||||
android:textSize="40dp"
|
||||
android:layout_width="760dp"
|
||||
android:layout_height="136dp"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/biz_actv_login_show_sn"
|
||||
|
||||
BIN
OCH/common/biz/src/main/res/raw/biz_login_bus_bg.mp4
Normal file
BIN
OCH/common/biz/src/main/res/raw/biz_login_taxi_bg.mp4
Normal file
@@ -5,5 +5,11 @@
|
||||
<color name="biz_login_72A7FF">#72A7FF</color>
|
||||
<color name="biz_login_A0B3DA">#A0B3DA</color>
|
||||
<color name="biz_login_171D2B">#171D2B</color>
|
||||
<color name="biz_login_C6C6C6">#C6C6C6</color>
|
||||
<color name="biz_login_4DFFFFFF">#4DFFFFFF</color>
|
||||
<color name="biz_login_4D000000">#4D000000</color>
|
||||
<color name="biz_login_878890">#878890</color>
|
||||
<color name="biz_login_19FFF5">#19FFF5</color>
|
||||
<color name="biz_login_1970FF">#1970FF</color>
|
||||
|
||||
</resources>
|
||||
@@ -0,0 +1,197 @@
|
||||
package com.mogo.och.common.module.wigets
|
||||
|
||||
import android.content.Context
|
||||
import android.view.View
|
||||
import android.view.animation.Animation
|
||||
import android.view.animation.AnimationUtils
|
||||
import android.view.animation.LinearInterpolator
|
||||
import android.widget.TextView
|
||||
import androidx.appcompat.widget.AppCompatImageView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.common.module.R
|
||||
import io.reactivex.Observable
|
||||
import io.reactivex.disposables.Disposable
|
||||
import io.reactivex.schedulers.Schedulers
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
||||
/**
|
||||
* 带有title, tip,confirm,cancel的dialog
|
||||
*/
|
||||
class CommonDialogStatus: BaseFloatDialog, LifecycleObserver {
|
||||
|
||||
private var commonConfirm : TextView? = null
|
||||
private var commonCancel : TextView? = null
|
||||
private var commonTitle : TextView? = null
|
||||
private var commonTips : TextView? = null
|
||||
private var countDownTxt: AppCompatTextView? = null
|
||||
private var commonStatus:AppCompatImageView?=null
|
||||
|
||||
private var clickListener: ClickListener? = null
|
||||
|
||||
private var subscribeCountDown: Disposable? = null
|
||||
|
||||
private var mCountdownValue: Int = 0
|
||||
|
||||
private var status:Status = Status.ask
|
||||
|
||||
constructor(builder: Builder,context: Context) : super(context) {
|
||||
commonTitle?.text = builder.titleStr
|
||||
commonTips?.text = builder.tipsStr
|
||||
commonCancel?.text = builder.cancelStr
|
||||
commonConfirm?.text = builder.confirmStr
|
||||
countDownTxt?.text = builder.countDownValue.toString()
|
||||
mCountdownValue = builder.countDownValue
|
||||
status = builder.statusEnum
|
||||
when (status) {
|
||||
Status.ask -> {
|
||||
commonStatus?.setImageResource(R.drawable.common_dialog_icon_ask)
|
||||
}
|
||||
Status.loading -> {
|
||||
commonStatus?.setImageResource(R.drawable.common_dialog_status_loading)
|
||||
}
|
||||
}
|
||||
|
||||
if (mCountdownValue > 0){
|
||||
countDownTxt?.visibility = View.VISIBLE
|
||||
}else{
|
||||
countDownTxt?.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
|
||||
init{
|
||||
setContentView(R.layout.common_dialog_status_new)
|
||||
|
||||
setCanceledOnTouchOutside(true)
|
||||
|
||||
commonConfirm = findViewById(R.id.common_dialog_submit_new)
|
||||
commonCancel = findViewById(R.id.common_dialog_cancle_new)
|
||||
commonTitle = findViewById(R.id.common_dialog_title_new)
|
||||
commonTips = findViewById(R.id.common_dialog_content_new)
|
||||
countDownTxt = findViewById(R.id.common_count_down_new)
|
||||
commonStatus = findViewById(R.id.common_dialog_status)
|
||||
|
||||
commonConfirm?.setOnClickListener{
|
||||
clickListener?.confirm()
|
||||
dismiss()
|
||||
}
|
||||
commonCancel?.setOnClickListener {
|
||||
clickListener?.cancel()
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
|
||||
fun setClickListener(clickListener: ClickListener) {
|
||||
this.clickListener = clickListener
|
||||
}
|
||||
|
||||
interface ClickListener{
|
||||
fun confirm()
|
||||
fun cancel()
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
if (mCountdownValue > 0){
|
||||
startCountDown()
|
||||
}
|
||||
}
|
||||
|
||||
private fun startCountDown() {
|
||||
subscribeCountDown?.let {
|
||||
if (!it.isDisposed) {
|
||||
it.dispose()
|
||||
}
|
||||
}
|
||||
val mAnimation: Animation = AnimationUtils.loadAnimation(context, R.anim.count_down_rotate)
|
||||
val lin = LinearInterpolator()
|
||||
mAnimation.interpolator = lin
|
||||
commonStatus?.startAnimation(mAnimation)
|
||||
|
||||
subscribeCountDown = Observable.intervalRange(0L
|
||||
, mCountdownValue.toLong(), 0, 1, TimeUnit.SECONDS)
|
||||
.map { aLong -> mCountdownValue - aLong }
|
||||
.subscribeOn(Schedulers.io())
|
||||
.observeOn(Schedulers.io())
|
||||
.subscribe {
|
||||
UiThreadHandler.post {
|
||||
mCountdownValue -= 1
|
||||
countDownTxt?.text = mCountdownValue.toString()
|
||||
if (mCountdownValue == 0){
|
||||
mAnimation.cancel()
|
||||
commonStatus?.clearAnimation()
|
||||
countDownTxt?.visibility = View.GONE
|
||||
commonStatus?.visibility = View.GONE
|
||||
dialogCancel()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun dialogCancel() {
|
||||
clickListener?.cancel()
|
||||
dismiss()
|
||||
}
|
||||
|
||||
override fun onDetachedFromWindow() {
|
||||
super.onDetachedFromWindow()
|
||||
subscribeCountDown?.let {
|
||||
if (!it.isDisposed) {
|
||||
it.dispose()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class Builder{
|
||||
var statusEnum: Status = Status.ask
|
||||
var titleStr:String = ""
|
||||
var tipsStr:String = ""
|
||||
var confirmStr:String = ""
|
||||
var cancelStr:String = ""
|
||||
var countDownValue: Int = 0
|
||||
|
||||
fun title(title: String) : Builder{
|
||||
this.titleStr = title
|
||||
return this
|
||||
}
|
||||
|
||||
fun tips(tips: String) : Builder{
|
||||
this.tipsStr = tips
|
||||
return this
|
||||
}
|
||||
|
||||
fun confirmStr(commit: String) : Builder{
|
||||
this.confirmStr = commit
|
||||
return this
|
||||
}
|
||||
|
||||
/**
|
||||
* 不传倒计时没有, >0 有倒计时
|
||||
*/
|
||||
fun countdownValue(value: Int): Builder{
|
||||
this.countDownValue = value
|
||||
return this
|
||||
}
|
||||
|
||||
fun cancelStr(cancel: String) : Builder{
|
||||
this.cancelStr = cancel
|
||||
return this
|
||||
}
|
||||
|
||||
fun build(context: Context): CommonDialogStatus {
|
||||
return CommonDialogStatus(this,context)
|
||||
}
|
||||
|
||||
fun status(ask: Status): Builder {
|
||||
this.statusEnum = ask
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
||||
enum class Status{
|
||||
ask,loading
|
||||
}
|
||||
|
||||
}
|
||||
|
After Width: | Height: | Size: 18 KiB |
|
After Width: | Height: | Size: 3.7 KiB |
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
|
||||
<gradient android:startColor="@color/color_3B3D44" android:endColor="@color/color_2E323A" android:angle="270"/>
|
||||
<stroke android:color="@color/color_666C6C6C" android:width="@dimen/dp_2"/>
|
||||
<corners android:radius="@dimen/dp_50"/>
|
||||
</shape>
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/taxi_login_enable" android:state_enabled="true"/>
|
||||
<item android:drawable="@drawable/taxi_login_unenable" android:state_enabled="false"/>
|
||||
</selector>
|
||||
@@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:radius="13.33dp"/>
|
||||
<solid android:color="@color/taxi_2961F2"/>
|
||||
</shape>
|
||||
@@ -0,0 +1,87 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<com.mogo.och.common.module.wigets.OCHRoundConstraintLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="@dimen/dp_900"
|
||||
android:layout_height="@dimen/dp_620"
|
||||
android:background="@drawable/bg_bone_dialog"
|
||||
app:roundLayoutRadius="@dimen/dp_50">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/common_dialog_status"
|
||||
android:layout_width="@dimen/dp_140"
|
||||
android:layout_height="@dimen/dp_140"
|
||||
android:layout_marginTop="@dimen/dp_87"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
android:src="@drawable/common_dialog_status_loading"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/common_count_down_new"
|
||||
android:text="10"
|
||||
android:textSize="@dimen/dp_45"
|
||||
android:textColor="@color/common_cccccc"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintTop_toTopOf="@+id/common_dialog_status"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/common_dialog_status"
|
||||
app:layout_constraintStart_toStartOf="@+id/common_dialog_status"
|
||||
app:layout_constraintEnd_toEndOf="@+id/common_dialog_status"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/common_dialog_title_new"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
tools:text="@string/offline_map_cache_tip"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/dp_45"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/common_dialog_status" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/common_dialog_content_new"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
tools:text="@string/cache_offline_map_content"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/dp_36"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/common_dialog_title_new" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/common_dialog_submit_new"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:gravity="center"
|
||||
android:text="@string/confirm"
|
||||
android:background="@drawable/bg_dialog_btn"
|
||||
android:textColor="@color/color_2EACFF"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:layout_marginStart="@dimen/dp_65"
|
||||
android:layout_marginBottom="@dimen/dp_62"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/common_dialog_cancle_new"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:gravity="center"
|
||||
android:text="@string/cancel"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:background="@drawable/bg_dialog_btn"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginEnd="@dimen/dp_65"
|
||||
android:layout_marginBottom="@dimen/dp_62"
|
||||
app:layout_constraintRight_toRightOf="parent"/>
|
||||
|
||||
|
||||
</com.mogo.och.common.module.wigets.OCHRoundConstraintLayout>
|
||||
@@ -32,4 +32,5 @@
|
||||
<color name="common_19FFCB">#19FFCB</color>
|
||||
<color name="common_FF4E41">#FF4E41</color>
|
||||
<color name="common_B3FFFFFF">#B3FFFFFF</color>
|
||||
<color name="common_cccccc">#CCCCCC</color>
|
||||
</resources>
|
||||
@@ -105,12 +105,10 @@ class TaskRunningAdapter(
|
||||
// 下端 彩色
|
||||
holder.itemView.setBackgroundResource(R.drawable.bus_task_current_station_bg)
|
||||
|
||||
val startColorTemp = argbEvaluator.evaluate(0f,startColor,endColor) as Int
|
||||
val endColorTemp = argbEvaluator.evaluate((halfHeight/totalHeight).toFloat(),startColor,endColor) as Int
|
||||
val orientation = GradientDrawable.Orientation.TOP_BOTTOM
|
||||
val temp01 = GradientDrawable(orientation, intArrayOf(
|
||||
startColorTemp,
|
||||
endColorTemp
|
||||
startColor,
|
||||
endColor
|
||||
))
|
||||
holder.bgPassBottomBg.background = temp01
|
||||
}
|
||||
|
||||
@@ -32,11 +32,12 @@ class TaskRunningModel : ViewModel(), IBusLinesCallback {
|
||||
|
||||
interface SwtichLineViewCallback{
|
||||
fun showRunningTaskInfo()
|
||||
fun hideLoadingAndshowRunningTaskInfo()
|
||||
}
|
||||
|
||||
override fun onLeaveStaionSuccess() {
|
||||
BizLoopManager.runInMainThread{
|
||||
viewCallback?.showRunningTaskInfo()
|
||||
viewCallback?.hideLoadingAndshowRunningTaskInfo()
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.view.SpacesItemDecoration
|
||||
import com.mogo.och.common.module.manager.autopilot.line.LineManager
|
||||
import com.mogo.och.common.module.utils.ResourcesUtils
|
||||
import com.mogo.och.common.module.wigets.CommonDialogStatus
|
||||
import com.mogo.och.common.module.wigets.OCHCommitDialog
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.model.LineModel
|
||||
@@ -24,6 +25,7 @@ import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_comple
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_running_task_last_station
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.actv_running_task_time
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.bus_task_running_line_name
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.loading_arrive_station
|
||||
import kotlinx.android.synthetic.main.shuttle_weak_task_running.view.rl_running_task_station_list
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
|
||||
@@ -67,17 +69,19 @@ class TaskRunningView: ConstraintLayout, TaskRunningModel.SwtichLineViewCallback
|
||||
}
|
||||
})
|
||||
actv_arriver_station.onClick {
|
||||
loading_arrive_station.visibility = VISIBLE
|
||||
viewModel?.arriveStation()
|
||||
}
|
||||
actv_complete_task.onClick {
|
||||
val builder = OCHCommitDialog.Builder()
|
||||
val builder = CommonDialogStatus.Builder()
|
||||
val closeLineConfirmDialog = builder
|
||||
.title(ResourcesUtils.getString(R.string.bus_dialog_title))
|
||||
.tips(ResourcesUtils.getString(R.string.bus_dialog_tips))
|
||||
.confirmStr(ResourcesUtils.getString(R.string.bus_dialog_confirm))
|
||||
.cancelStr(ResourcesUtils.getString(R.string.bus_dialog_cancel))
|
||||
.status(CommonDialogStatus.Status.ask)
|
||||
.build(AbsMogoApplication.getApp())
|
||||
closeLineConfirmDialog!!.setClickListener(object : OCHCommitDialog.ClickListener {
|
||||
closeLineConfirmDialog.setClickListener(object : CommonDialogStatus.ClickListener {
|
||||
override fun confirm() {
|
||||
viewModel?.completeTask()
|
||||
}
|
||||
@@ -125,6 +129,11 @@ class TaskRunningView: ConstraintLayout, TaskRunningModel.SwtichLineViewCallback
|
||||
}
|
||||
}
|
||||
|
||||
override fun hideLoadingAndshowRunningTaskInfo() {
|
||||
loading_arrive_station.visibility = GONE
|
||||
showRunningTaskInfo()
|
||||
}
|
||||
|
||||
fun showLeaveStationView(){
|
||||
aciv_task_leave_station_slide_bg.visibility = VISIBLE
|
||||
actv_arriver_station.visibility = GONE
|
||||
|
||||
@@ -46,8 +46,7 @@
|
||||
android:layout_marginEnd="@dimen/bus_dp_52"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_last_refresh_date"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_22"
|
||||
android:layout_marginBottom="@dimen/dp_24"/>
|
||||
android:layout_marginTop="@dimen/dp_22" />
|
||||
|
||||
<include
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -17,14 +17,14 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/actv_running_task_time"
|
||||
android:layout_marginEnd="@dimen/dp_100"
|
||||
android:layout_marginEnd="@dimen/dp_140"
|
||||
android:layout_marginTop="@dimen/dp_37"
|
||||
android:textColor="@color/white"
|
||||
android:text="@string/bus_switch_line_title"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_running_task_last_station"
|
||||
android:textColor="@color/white"
|
||||
android:textColor="@color/shuttle_driver_B3FFFFFF"
|
||||
android:textSize="@dimen/dp_36"
|
||||
app:layout_constraintStart_toStartOf="@+id/bus_task_running_line_name"
|
||||
app:layout_constraintTop_toBottomOf="@+id/bus_task_running_line_name"
|
||||
@@ -80,6 +80,17 @@
|
||||
android:layout_width="@dimen/dp_474"
|
||||
android:layout_height="@dimen/dp_120"/>
|
||||
|
||||
<com.mogo.och.weaknet.view.LoadingViewSmall
|
||||
android:id="@+id/loading_arrive_station"
|
||||
android:src="@drawable/bus_switch_biz_loading_samll"
|
||||
app:layout_constraintTop_toTopOf="@+id/actv_arriver_station"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/actv_arriver_station"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_arriver_station"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:visibility="gone"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_complete_task"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
||||
@@ -78,4 +78,5 @@
|
||||
<color name="shuttle_driver_4DFFFFFF">#4D000000</color>
|
||||
<color name="shuttle_driver_1970FF">#1970FF</color>
|
||||
<color name="shuttle_driver_19FF7F">#19FF7F</color>
|
||||
<color name="shuttle_driver_B3FFFFFF">#B3FFFFFF</color>
|
||||
</resources>
|
||||
@@ -80,7 +80,7 @@ public abstract class BaseTaxiTabFragment<V extends IView, P extends Presenter<V
|
||||
});
|
||||
|
||||
if (getContext() != null) {
|
||||
CallerEagleBaseFunctionCall4OchManager.INSTANCE.addSingleToolKitDefaultItem(runningTaskGateWay, "运营面板", R.drawable.common_biz_operation, 4);
|
||||
CallerEagleBaseFunctionCall4OchManager.INSTANCE.addSingleToolKitDefaultItem(runningTaskGateWay, "运营看板", R.drawable.common_biz_operation, 4);
|
||||
CallerEagleBaseFunctionCall4OchManager.INSTANCE.addToolKitDefaultItemClickListener(runningTaskGateWay, new IToolKitItemClickListener() {
|
||||
@Override
|
||||
public void onItemClick(@NonNull String toolTag, @Nullable Context ctx) {
|
||||
|
||||
@@ -85,7 +85,7 @@ abstract class BaseTaxiTabFragment<V : IView, P : Presenter<V>> : MvpFragment<V,
|
||||
context?.let {
|
||||
CallerEagleBaseFunctionCall4OchManager.addSingleToolKitDefaultItem(
|
||||
runningTaskGateWay,
|
||||
"运营面板",
|
||||
"运营看板",
|
||||
R.drawable.common_biz_operation,
|
||||
4
|
||||
);
|
||||
|
||||