diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt index 45ec64fefd..58a05976a0 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/M1ContainFragment.kt @@ -20,6 +20,7 @@ import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1SoftFragment import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1VideoFragment import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.OrderInfoFragment import com.mogo.och.bus.passenger.ui.view.bottom.BottomBar +import com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView import kotlinx.android.synthetic.main.m1_contain_fragment.* /** @@ -52,26 +53,40 @@ class M1ContainFragment : fragment = childFragmentManager.findFragmentByTag(M1VideoFragment.TAG) ?: M1VideoFragment.newInstance() bb_bottom_bar.setCheckIndex(BottomBar.SelectView.VIDEO) + cl_container.setBackgroundResource(R.drawable.m1_function_bg) + fragmentTag = M1VideoFragment.TAG } SETTINGSOFTTAB -> { fragment = childFragmentManager.findFragmentByTag(M1SoftFragment.TAG) ?: M1SoftFragment.newInstance() bb_bottom_bar.setCheckIndex(BottomBar.SelectView.SETTING) + cl_container.setBackgroundResource(R.drawable.m1_function_bg) + fragmentTag = M1SoftFragment.TAG } ORDERINFO -> { fragment = childFragmentManager.findFragmentByTag(OrderInfoFragment.TAG) ?: OrderInfoFragment.newInstance() bb_bottom_bar.setCheckIndex(BottomBar.SelectView.ORDERINFO) + cl_container.background = null + fragmentTag = OrderInfoFragment.TAG } SELECTLINE ->{ fragment = childFragmentManager.findFragmentByTag(M1OrderLineFragment.TAG) ?: M1OrderLineFragment.newInstance() bb_bottom_bar.setCheckIndex(BottomBar.SelectView.LINE) + cl_container.background = null + fragmentTag = M1OrderLineFragment.TAG } else -> {} } + CallerLogger.d(M_BUS_P+ TAG, "fragment:$fragment") + fragment?.let { - childFragmentManager.beginTransaction() + val beginTransaction = childFragmentManager.beginTransaction() + if(!it.isAdded){ + beginTransaction.add(it,fragmentTag) + } + beginTransaction .replace(R.id.fl_function_group, it, fragmentTag) .commitNow() } @@ -117,6 +132,11 @@ class M1ContainFragment : setCheckView() } } + bb_bottom_bar.setApplyClickListener(object : BottomClickView.ApplyClickLintener{ + override fun onApplyClick() { + dismissAllowingStateLoss() + } + }) } diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt index 75a3d60a39..ab85580266 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1OrderLineFragment.kt @@ -243,7 +243,7 @@ class M1OrderLineFragment : } companion object { - const val TAG = "BusPassengerFunctionOrderFragment" + const val TAG = "M1OrderLineFragment" @JvmStatic fun newInstance(): M1OrderLineFragment { diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1SoftFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1SoftFragment.kt index 529be8f177..3abf9be383 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1SoftFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1SoftFragment.kt @@ -711,7 +711,7 @@ class M1SoftFragment : } companion object { - const val TAG = "BusPassengerFunctionSoftFragment" + const val TAG = "M1SoftFragment" const val touchTagKey = 2 const val touchTag = 2 diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1VideoFragment.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1VideoFragment.kt index d6e85ea5d4..6708be7aef 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1VideoFragment.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/dialogfragment/fragment/M1VideoFragment.kt @@ -152,7 +152,7 @@ class M1VideoFragment : } companion object { - const val TAG = "BusPassengerFunctionVideoFragment" + const val TAG = "M1VideoFragment" @JvmStatic fun newInstance(): M1VideoFragment { val args = Bundle() diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomBar.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomBar.kt index dfd83a5fa3..5b7e927495 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomBar.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomBar.kt @@ -33,6 +33,13 @@ class BottomBar @JvmOverloads constructor( actv_line.setOnClickListener(click) } + fun setApplyClickListener(click:BottomClickView.ApplyClickLintener){ + aciv_center_image.applyClickListener=click + actv_stop_site.applyClickListener=click + actv_close_door.applyClickListener=click + actv_open_door.applyClickListener=click + } + fun setCheckIndex(index:SelectView){ if(checkIndex==index){ return diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomCheckView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomCheckView.kt new file mode 100644 index 0000000000..a211f57c7e --- /dev/null +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomCheckView.kt @@ -0,0 +1,84 @@ +package com.mogo.och.bus.passenger.ui.view.bottom + +import android.content.Context +import android.util.AttributeSet +import android.view.LayoutInflater +import android.view.View +import androidx.constraintlayout.widget.ConstraintLayout +import com.mogo.och.bus.passenger.R +import kotlinx.android.synthetic.main.m1_bottom_stop_site.view.* + +open class BottomCheckView @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : ConstraintLayout(context, attrs, defStyleAttr) { + + companion object { + private const val TAG = "StopSiteView" + } + + private var backageViewId: Int = -1 + private var bottomTitle: String = "" + private var selectedDrawable: Int = -1 + private var normalDrawable: Int = -1 + private var backageView: View? = null + + private var isCheck = false + + init { + LayoutInflater.from(context).inflate(R.layout.m1_bottom_stop_site, this, true) + try { + val typedArray = context.obtainStyledAttributes(attrs, R.styleable.BottomSelectView) + backageViewId = typedArray.getResourceId(R.styleable.BottomSelectView_backageViewId, -1) + bottomTitle = typedArray.getString(R.styleable.BottomSelectView_bottomTitle) ?: "" + selectedDrawable = typedArray.getResourceId(R.styleable.BottomSelectView_selectedDrawable, -1) + normalDrawable = typedArray.getResourceId(R.styleable.BottomSelectView_normalDrawable, -1) + typedArray.recycle() + initView(context) + } catch (e: Exception) { + e.printStackTrace() + } + + } + + private fun initView(context: Context) { + if (selectedDrawable > 0) { + aciv_center_image.setImageResource(normalDrawable) + } + actv_title.text = bottomTitle + } + + fun setCheckItem(isCheck: Boolean) { + if (isCheck != this.isCheck) { + this.isCheck = isCheck + notifiBackageView() + } + } + + private fun notifiBackageView() { + if (isCheck) { + backageView?.visibility = View.VISIBLE + aciv_center_image.setImageResource(selectedDrawable) + actv_title.setTextColor(context.getColor(android.R.color.white)) + } else { + backageView?.visibility = View.GONE + aciv_center_image.setImageResource(normalDrawable) + actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) + } + } + + override fun onAttachedToWindow() { + super.onAttachedToWindow() + parent?.let { + if (parent is ConstraintLayout) { + if (backageViewId > 0) { + backageView = (parent as ConstraintLayout).findViewById(backageViewId) + } + } + } + if (isCheck) { + backageView?.visibility = View.VISIBLE + } + } +} \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomClickView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomClickView.kt index df63c2baab..23d4abd1a8 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomClickView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/BottomClickView.kt @@ -34,8 +34,7 @@ open class BottomClickView @JvmOverloads constructor( private var normalDrawable: Int = -1 private var backageView: View? = null - private var showBackageView = true - private var isCheck = false + var applyClickListener:ApplyClickLintener?=null init { LayoutInflater.from(context).inflate(R.layout.m1_bottom_stop_site, this, true) @@ -43,11 +42,8 @@ open class BottomClickView @JvmOverloads constructor( val typedArray = context.obtainStyledAttributes(attrs, R.styleable.BottomSelectView) backageViewId = typedArray.getResourceId(R.styleable.BottomSelectView_backageViewId, -1) bottomTitle = typedArray.getString(R.styleable.BottomSelectView_bottomTitle) ?: "" - showBackageView = typedArray.getBoolean(R.styleable.BottomSelectView_bottomClick, true) - selectedDrawable = - typedArray.getResourceId(R.styleable.BottomSelectView_selectedDrawable, -1) - normalDrawable = - typedArray.getResourceId(R.styleable.BottomSelectView_normalDrawable, -1) + selectedDrawable = typedArray.getResourceId(R.styleable.BottomSelectView_selectedDrawable, -1) + normalDrawable = typedArray.getResourceId(R.styleable.BottomSelectView_normalDrawable, -1) typedArray.recycle() initView(context) } catch (e: Exception) { @@ -61,61 +57,39 @@ open class BottomClickView @JvmOverloads constructor( aciv_center_image.setImageResource(normalDrawable) } actv_title.text = bottomTitle - if (showBackageView) { - setOnTouchListener(object : OnTouchListener { - @SuppressLint("ClickableViewAccessibility") - override fun onTouch(v: View?, event: MotionEvent?): Boolean { - when (event?.action) { - MotionEvent.ACTION_DOWN -> { - CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_DOWN") - if (selectedDrawable > 0) { - aciv_center_image.setImageResource(selectedDrawable) - actv_title.setTextColor(context.getColor(android.R.color.white)) - backageView?.visibility = View.VISIBLE - } + setOnTouchListener(object : OnTouchListener { + @SuppressLint("ClickableViewAccessibility") + override fun onTouch(v: View?, event: MotionEvent?): Boolean { + when (event?.action) { + MotionEvent.ACTION_DOWN -> { + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_DOWN") + if (selectedDrawable > 0) { + aciv_center_image.setImageResource(selectedDrawable) + actv_title.setTextColor(context.getColor(android.R.color.white)) + backageView?.visibility = View.VISIBLE } - MotionEvent.ACTION_UP -> { - CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_UP") - if (selectedDrawable > 0) { - aciv_center_image.setImageResource(normalDrawable) - actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) - backageView?.visibility = View.GONE - } - } - MotionEvent.ACTION_CANCEL -> { - CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_CANCEL") - if (selectedDrawable > 0) { - aciv_center_image.setImageResource(normalDrawable) - actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) - backageView?.visibility = View.GONE - } - } - else -> {} } - return false + MotionEvent.ACTION_UP -> { + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_UP") + if (selectedDrawable > 0) { + aciv_center_image.setImageResource(normalDrawable) + actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) + backageView?.visibility = View.GONE + } + } + MotionEvent.ACTION_CANCEL -> { + CallerLogger.d(SceneConstant.M_BUS_P + TAG, "ACTION_CANCEL") + if (selectedDrawable > 0) { + aciv_center_image.setImageResource(normalDrawable) + actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) + backageView?.visibility = View.GONE + } + } + else -> {} } - }) - } - } - - fun setCheckItem(isCheck: Boolean) { - showBackageView = false - if (isCheck != this.isCheck) { - this.isCheck = isCheck - notifiBackageView() - } - } - - private fun notifiBackageView() { - if (isCheck) { - backageView?.visibility = View.VISIBLE - aciv_center_image.setImageResource(selectedDrawable) - actv_title.setTextColor(context.getColor(android.R.color.white)) - } else { - backageView?.visibility = View.GONE - aciv_center_image.setImageResource(normalDrawable) - actv_title.setTextColor(context.getColor(R.color.bus_p_m1_090f28)) - } + return false + } + }) } override fun onAttachedToWindow() { @@ -127,8 +101,9 @@ open class BottomClickView @JvmOverloads constructor( } } } - if (isCheck) { - backageView?.visibility = View.VISIBLE - } + } + + interface ApplyClickLintener{ + fun onApplyClick() } } \ No newline at end of file diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/CloseDoorView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/CloseDoorView.kt index 50ceb315e7..c52feaf46c 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/CloseDoorView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/CloseDoorView.kt @@ -24,6 +24,7 @@ class CloseDoorView @JvmOverloads constructor( init { setOnClickListener { go2OpenDoor() + applyClickListener?.onApplyClick() } } diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/GoView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/GoView.kt index b1da5c9a38..cd873d8bb7 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/GoView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/GoView.kt @@ -15,6 +15,7 @@ import com.mogo.eagle.core.utilcode.util.ActivityUtils import com.mogo.eagle.core.utilcode.util.ToastUtils import com.mogo.och.bus.passenger.R import com.mogo.och.bus.passenger.model.CharterPassengerModel +import com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView import com.mogo.och.common.module.utils.SoundPoolHelper import kotlinx.android.synthetic.main.m1_bottom_bar.view.* @@ -24,6 +25,8 @@ class GoView @JvmOverloads constructor( defStyleAttr: Int = 0 ) : AppCompatTextView(context, attrs, defStyleAttr) { + var applyClickListener: BottomClickView.ApplyClickLintener?=null + companion object{ private const val TAG = "GoView" } @@ -51,7 +54,10 @@ class GoView @JvmOverloads constructor( return false } }) - setOnClickListener { startGo() } + setOnClickListener { + startGo() + applyClickListener?.onApplyClick() + } } private fun startGo(){ diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/OpenDoorView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/OpenDoorView.kt index 503de66a56..f7e374ac61 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/OpenDoorView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/OpenDoorView.kt @@ -18,6 +18,7 @@ class OpenDoorView @JvmOverloads constructor( init { setOnClickListener { go2OpenDoor() + applyClickListener?.onApplyClick() } } diff --git a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/StopSiteView.kt b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/StopSiteView.kt index 9ebe553648..9469c4035e 100644 --- a/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/StopSiteView.kt +++ b/OCH/mogo-och-charter-passenger/src/main/java/com/mogo/och/bus/passenger/ui/view/bottom/impl/StopSiteView.kt @@ -31,6 +31,7 @@ class StopSiteView @JvmOverloads constructor( init { setOnClickListener { stopSite() + applyClickListener?.onApplyClick() } } diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_bottom_bar.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_bottom_bar.xml index 36f1de551f..9072d42d3e 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_bottom_bar.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_bottom_bar.xml @@ -160,7 +160,7 @@ android:layout_width="@dimen/dp_359" android:layout_height="@dimen/dp_107"/> - - diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml index b5f707fcbd..998014b189 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_devices_fragment.xml @@ -10,7 +10,6 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintStart_toStartOf="parent" android:clickable="true" - android:layout_marginBottom="@dimen/dp_140" android:layout_marginStart="@dimen/dp_26" android:layout_width="@dimen/dp_327" android:layout_height="@dimen/dp_270"> @@ -79,7 +78,6 @@ app:layout_constraintStart_toStartOf="parent" android:clickable="true" android:visibility="gone" - android:layout_marginBottom="@dimen/dp_140" android:layout_marginStart="@dimen/dp_26" android:layout_width="@dimen/dp_400" android:layout_height="@dimen/dp_270"> diff --git a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_end.xml b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_end.xml index 1ebd0b0da2..f62bec70d3 100644 --- a/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_end.xml +++ b/OCH/mogo-och-charter-passenger/src/main/res/layout/m1_order_end.xml @@ -15,7 +15,7 @@ app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintDimensionRatio="1031:500" app:layout_constraintEnd_toEndOf="parent" - android:layout_marginBottom="@dimen/dp_179" + android:layout_marginBottom="@dimen/dp_181" app:layout_constraintStart_toStartOf="parent" app:layout_constraintWidth_percent="0.53698"> diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml index f32d808bef..c8e191641e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml @@ -15,6 +15,7 @@ 18dp 30dp 34dp + 34.5dp 36dp 38dp 42dp