[charter]
[3.2.0] [底部导航栏功能]
@@ -1,13 +1,6 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.bus.passenger.model.CharterPassengerModel
|
||||
import com.mogo.och.bus.passenger.ui.M1CarUserNoOrderFragment
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
import io.reactivex.disposables.Disposable
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1CarUserNoOrderFragment
|
||||
|
||||
class BusPassengerCarUseAndNoOrderPresenter(view: M1CarUserNoOrderFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1CarUserNoOrderFragment?>(view){
|
||||
|
||||
@@ -1,15 +1,7 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.bus.passenger.model.CharterPassengerModel
|
||||
import com.mogo.och.bus.passenger.ui.M1DeviceFragment
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
import io.reactivex.disposables.Disposable
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1DeviceFragment
|
||||
|
||||
class BusPassengerFunctionDevicePresenter(view: M1DeviceFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1DeviceFragment?>(view) {
|
||||
|
||||
@@ -21,7 +21,7 @@ import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener
|
||||
import com.mogo.och.bus.passenger.model.OrderStatusEnum
|
||||
import com.mogo.och.bus.passenger.net.BusPassengerModelLoopManager
|
||||
import com.mogo.och.bus.passenger.net.BusPassengerServiceManager
|
||||
import com.mogo.och.bus.passenger.ui.M1OrderFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1OrderLineFragment
|
||||
import com.mogo.och.common.module.bean.dpmsg.ChangeDestMsg
|
||||
import com.mogo.och.common.module.bean.dpmsg.DPMsgType
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
@@ -30,8 +30,8 @@ import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
import io.reactivex.disposables.Disposable
|
||||
|
||||
class BusPassengerFunctionOrderPresenter(view: M1OrderFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1OrderFragment?>(view), IOrderStatusChangeListener {
|
||||
class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1OrderLineFragment?>(view), IOrderStatusChangeListener {
|
||||
|
||||
companion object{
|
||||
|
||||
|
||||
@@ -1,13 +1,7 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.ui.M1ContainFragment
|
||||
import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager
|
||||
import com.mogo.och.common.module.voice.VoiceNotice
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
|
||||
class BusPassengerFunctionPresenter(view: M1ContainFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1ContainFragment?>(view) {
|
||||
|
||||
@@ -6,7 +6,7 @@ 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.ToastUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.mogo.och.bus.passenger.ui.M1SoftFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1SoftFragment
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
import com.mogo.och.common.module.manager.devicemanage.data.AirconditionStatus
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import com.mogo.och.bus.passenger.ui.M1VideoFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1VideoFragment
|
||||
|
||||
class BusPassengerFunctionVideoPresenter(view: M1VideoFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<M1VideoFragment?>(view)
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.OrderInfoDialogFragment
|
||||
|
||||
class OrderInfoPresenter(view: OrderInfoDialogFragment?) :
|
||||
BusBasePassengerFunctionDevicePresenter<OrderInfoDialogFragment?>(view) {
|
||||
companion object{
|
||||
private const val TAG = "BusPassengerFunctionPresenter"
|
||||
}
|
||||
override fun onCreate(owner: LifecycleOwner) {
|
||||
super.onCreate(owner)
|
||||
}
|
||||
|
||||
override fun onDestroy(owner: LifecycleOwner) {
|
||||
super.onDestroy(owner)
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionEarlyEndOrderPresenter
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
import kotlinx.android.synthetic.main.m1_order_early_end.*
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,20 +1,17 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
|
||||
import android.graphics.BitmapFactory
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
import android.view.View.OnClickListener
|
||||
import androidx.fragment.app.DialogFragment
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.amap.api.maps.model.LatLng
|
||||
import com.mogo.commons.AbsMogoApplication
|
||||
import com.mogo.commons.debug.DebugConfig
|
||||
import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.config.HdMapBuildConfig
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.mogo.eagle.core.function.hmi.ui.msgbox.MMsgBoxButtonView
|
||||
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.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
@@ -22,10 +19,11 @@ import com.mogo.eagle.core.utilcode.util.AppStateManager
|
||||
import com.mogo.eagle.core.utilcode.util.ClickUtils
|
||||
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.common.module.voice.VoiceManager
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerPresenter
|
||||
import com.mogo.och.bus.passenger.utils.VoiceFocusManager
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1CarUserNoOrderFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.OrderInfoDialogFragment
|
||||
import com.mogo.och.common.module.biz.constant.LoginStatusManager
|
||||
import kotlinx.android.synthetic.main.m1_main_fragment.*
|
||||
import java.lang.ref.WeakReference
|
||||
@@ -38,6 +36,7 @@ class MainFragment :
|
||||
MvpFragment<MainFragment?, BusPassengerPresenter?>() {
|
||||
|
||||
private var bpFunctionGroupDialogFragment: WeakReference<M1ContainFragment>? = null
|
||||
private var orderInfoDialogFragment: WeakReference<OrderInfoDialogFragment>? = null
|
||||
private var m1CarUserNoOrderFragment: WeakReference<M1CarUserNoOrderFragment>? = null
|
||||
|
||||
val endStation =
|
||||
@@ -52,34 +51,6 @@ class MainFragment :
|
||||
}
|
||||
|
||||
override fun initViews() {
|
||||
cb_bp_video_player.onClick {
|
||||
openSettingPage(M1ContainFragment.VIDEOTAB)
|
||||
}
|
||||
cb_bp_setting_soft.onClick {
|
||||
openSettingPage(M1ContainFragment.SETTINGSOFTTAB)
|
||||
}
|
||||
cb_bp_setting_device.onClick {
|
||||
openSettingPage(M1ContainFragment.SETTINGDEVICETAB)
|
||||
}
|
||||
cb_bp_setting_order.onClick {
|
||||
if (LoginStatusManager.isLogin()) {
|
||||
openSettingPage(M1ContainFragment.SETTINGORDERTAB)
|
||||
}else{
|
||||
ToastUtils.showShort(AbsMogoApplication.getApp().getString(R.string.m1_please_login_driver))
|
||||
}
|
||||
}
|
||||
iv_end_order.onClick {
|
||||
if (LoginStatusManager.isLogin()) {
|
||||
if(mPresenter?.haveOrder()==true){
|
||||
openSettingPage(M1ContainFragment.SETTINGENDORDERTAB)
|
||||
}else{
|
||||
ToastUtils.showShort("没有订单无法结束订单")
|
||||
}
|
||||
}else{
|
||||
ToastUtils.showShort(AbsMogoApplication.getApp().getString(R.string.m1_please_login_driver))
|
||||
}
|
||||
}
|
||||
|
||||
viewBusPM1MsgBoxButton.setClickListener(object : MMsgBoxButtonView.ClickListener {
|
||||
override fun showMsgBoxList(show: Boolean) {
|
||||
if (show) {
|
||||
@@ -94,6 +65,12 @@ class MainFragment :
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
bb_boorombar.setSettingClickListener(object :OnClickListener{
|
||||
override fun onClick(v: View?) {
|
||||
openOrderInfoPage()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
private fun openSettingPage(tab: String) {
|
||||
@@ -135,6 +112,45 @@ class MainFragment :
|
||||
}
|
||||
}
|
||||
|
||||
private fun openOrderInfoPage() {
|
||||
val fragmentByTag: Fragment? = childFragmentManager.findFragmentByTag(
|
||||
OrderInfoDialogFragment.TAG)
|
||||
if (fragmentByTag is DialogFragment) {
|
||||
if (fragmentByTag.dialog != null && fragmentByTag.dialog!!.isShowing) {
|
||||
CallerLogger.d(SceneConstant.M_BUS_P + TAG, "正在展示")
|
||||
return
|
||||
}
|
||||
if (fragmentByTag.dialog != null && fragmentByTag.isAdded) {
|
||||
if (AppStateManager.currentActivity() == null) { // 没有在当前应用内 在启动页面关闭应用
|
||||
CallerLogger.d(SceneConstant.M_BUS_P + TAG, "权限验证")
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (orderInfoDialogFragment?.get() == null) {
|
||||
orderInfoDialogFragment = WeakReference(OrderInfoDialogFragment.newInstance())
|
||||
}
|
||||
val bpFunctionGroup = orderInfoDialogFragment?.get()
|
||||
if (bpFunctionGroup != null) {
|
||||
if (bpFunctionGroup.dialog != null && bpFunctionGroup.dialog!!.isShowing) {
|
||||
return
|
||||
}
|
||||
if (bpFunctionGroup.isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。
|
||||
parentFragmentManager.beginTransaction().remove(bpFunctionGroup)
|
||||
.commitAllowingStateLoss()
|
||||
}
|
||||
if (ClickUtils.isFastClick()) {
|
||||
bpFunctionGroup.show(parentFragmentManager, TAG)
|
||||
CallerLogger.d(SceneConstant.M_BUS_P + TAG, "展示")
|
||||
} else {
|
||||
CallerLogger.d(
|
||||
SceneConstant.M_BUS_P + TAG, "dialog 1s内执行一次"
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
fun setSpeed(speed: String) {
|
||||
tv_speed.text = speed
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
@@ -102,7 +102,7 @@ class M1CarUserNoOrderFragment :
|
||||
}
|
||||
|
||||
override fun onViewStateRestored(savedInstanceState: Bundle?) {
|
||||
CallerLogger.d(M_BUS_P+TAG, "onViewStateRestored")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "onViewStateRestored")
|
||||
super.onViewStateRestored(savedInstanceState)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
@@ -16,6 +16,11 @@ import com.mogo.eagle.core.utilcode.util.BarUtils
|
||||
import com.mogo.eagle.core.utilcode.util.SharedPrefs
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionPresenter
|
||||
import com.mogo.och.bus.passenger.ui.*
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1DeviceFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1OrderLineFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1SoftFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1VideoFragment
|
||||
import kotlinx.android.synthetic.main.m1_contain_fragment.*
|
||||
|
||||
/**
|
||||
@@ -38,7 +43,7 @@ class M1ContainFragment :
|
||||
savedInstanceState?.let {
|
||||
tab = it.getString(SELECTTAB, tab)
|
||||
}
|
||||
isEarlyClose = tab==SETTINGENDORDERTAB
|
||||
isEarlyClose = tab== SETTINGENDORDERTAB
|
||||
setStyle(STYLE_NO_TITLE, R.style.DialogFullScreen) //dialog全屏
|
||||
}
|
||||
|
||||
@@ -61,8 +66,8 @@ class M1ContainFragment :
|
||||
}
|
||||
SETTINGORDERTAB -> {
|
||||
fragment =
|
||||
childFragmentManager.findFragmentByTag(M1OrderFragment.TAG)
|
||||
?: M1OrderFragment.newInstance(object :ChangeCheck{
|
||||
childFragmentManager.findFragmentByTag(M1OrderLineFragment.TAG)
|
||||
?: M1OrderLineFragment.newInstance(object : ChangeCheck {
|
||||
override fun changeChange() {
|
||||
cb_bp_setting_device.isChecked = true
|
||||
}
|
||||
@@ -71,7 +76,7 @@ class M1ContainFragment :
|
||||
SETTINGENDORDERTAB -> {
|
||||
fragment =
|
||||
childFragmentManager.findFragmentByTag(M1EarlyEndOrderFragment.TAG)
|
||||
?: M1EarlyEndOrderFragment.newInstance(object :ContainDismiss{
|
||||
?: M1EarlyEndOrderFragment.newInstance(object : ContainDismiss {
|
||||
override fun closeDialog() {
|
||||
dismissAllowingStateLoss()
|
||||
}
|
||||
@@ -112,7 +117,7 @@ class M1ContainFragment :
|
||||
}
|
||||
|
||||
private val videoListener = CompoundButton.OnCheckedChangeListener { _, isChecked ->
|
||||
CallerLogger.d(M_BUS_P+TAG, "videoListener$isChecked")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "videoListener$isChecked")
|
||||
if (isChecked) {
|
||||
tab = VIDEOTAB
|
||||
fragmentTag = M1VideoFragment.TAG
|
||||
@@ -131,7 +136,7 @@ class M1ContainFragment :
|
||||
}
|
||||
|
||||
private val settingDevices = CompoundButton.OnCheckedChangeListener { _, isChecked ->
|
||||
CallerLogger.d(M_BUS_P+TAG, "settingDevices$isChecked")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "settingDevices$isChecked")
|
||||
if (isChecked) {
|
||||
tab = SETTINGDEVICETAB
|
||||
fragmentTag = M1DeviceFragment.TAG
|
||||
@@ -150,7 +155,7 @@ class M1ContainFragment :
|
||||
}
|
||||
|
||||
private val settingSoft = CompoundButton.OnCheckedChangeListener { _, isChecked ->
|
||||
CallerLogger.d(M_BUS_P+TAG, "settingSoft$isChecked")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "settingSoft$isChecked")
|
||||
if (isChecked) {
|
||||
tab = SETTINGSOFTTAB
|
||||
fragmentTag = M1SoftFragment.TAG
|
||||
@@ -168,14 +173,14 @@ class M1ContainFragment :
|
||||
}
|
||||
}
|
||||
private val settingOrder = CompoundButton.OnCheckedChangeListener { _, isChecked ->
|
||||
CallerLogger.d(M_BUS_P+TAG, "settingOrder$isChecked")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "settingOrder$isChecked")
|
||||
if (isChecked) {
|
||||
if(isEarlyClose){
|
||||
tab = SETTINGENDORDERTAB
|
||||
}else{
|
||||
tab = SETTINGORDERTAB
|
||||
}
|
||||
fragmentTag = M1OrderFragment.TAG
|
||||
fragmentTag = M1OrderLineFragment.TAG
|
||||
cb_bp_video_player.isChecked = false
|
||||
cb_bp_setting_device.isChecked = false
|
||||
cb_bp_setting_soft.isChecked = false
|
||||
@@ -234,7 +239,7 @@ class M1ContainFragment :
|
||||
}
|
||||
|
||||
override fun onViewStateRestored(savedInstanceState: Bundle?) {
|
||||
CallerLogger.d(M_BUS_P+TAG, "onViewStateRestored")
|
||||
CallerLogger.d(M_BUS_P+ TAG, "onViewStateRestored")
|
||||
cb_bp_video_player.setOnCheckedChangeListener(null)
|
||||
cb_bp_setting_soft.setOnCheckedChangeListener(null)
|
||||
cb_bp_setting_device.setOnCheckedChangeListener(null)
|
||||
@@ -0,0 +1,130 @@
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.util.DisplayMetrics
|
||||
import android.util.Log
|
||||
import android.view.View
|
||||
import android.view.WindowManager
|
||||
import androidx.fragment.app.DialogFragment
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.fragment.app.FragmentManager
|
||||
import androidx.fragment.app.FragmentTransaction
|
||||
import com.mogo.commons.mvp.MvpDialogFragment
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
|
||||
import com.mogo.eagle.core.utilcode.util.BarUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.presenter.OrderInfoPresenter
|
||||
import com.mogo.och.bus.passenger.ui.*
|
||||
import kotlinx.android.synthetic.main.m1_contain_fragment.*
|
||||
import kotlinx.android.synthetic.main.orderinfo_fragment.*
|
||||
import me.jessyan.autosize.AutoSizeCompat
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
import me.jessyan.autosize.utils.ScreenUtils
|
||||
|
||||
/**
|
||||
* @author: yangyakun
|
||||
* @date: 2023/1/28
|
||||
*/
|
||||
class OrderInfoDialogFragment :
|
||||
MvpDialogFragment<OrderInfoDialogFragment?, OrderInfoPresenter?>() {
|
||||
|
||||
var fragment: Fragment? = null
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
arguments?.let {
|
||||
|
||||
}
|
||||
savedInstanceState?.let {
|
||||
|
||||
}
|
||||
setStyle(STYLE_NO_TITLE, R.style.DialogFullScreen) //dialog全屏
|
||||
}
|
||||
|
||||
|
||||
override fun getLayoutId(): Int = R.layout.orderinfo_fragment
|
||||
|
||||
override fun getTagName(): String = TAG
|
||||
|
||||
override fun initViews() {
|
||||
dialog?.setCancelable(true)
|
||||
cl_container_order_info.setOnClickListener {
|
||||
dismissAllowingStateLoss()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
dialog?.window?.let {
|
||||
BarUtils.hideStatusBarAndSticky(it)
|
||||
it.addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE)
|
||||
dialog?.setOnShowListener { _ ->
|
||||
it.clearFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE)
|
||||
BarUtils.hideStatusBarAndSticky(it)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onSaveInstanceState(outState: Bundle) {
|
||||
super.onSaveInstanceState(outState)
|
||||
context?.let {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
override fun createPresenter(): OrderInfoPresenter =
|
||||
OrderInfoPresenter(this)
|
||||
|
||||
/**
|
||||
* 重写父类show()方法
|
||||
* 避免出现java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
|
||||
*/
|
||||
override fun show(manager: FragmentManager, tag: String?) {
|
||||
try {
|
||||
var cls = this.javaClass.superclass ?: return
|
||||
while (true) {
|
||||
if (cls.name == "java.lang.Object") {
|
||||
break
|
||||
}
|
||||
cls = cls.superclass!!
|
||||
if (cls == DialogFragment::class.java) {
|
||||
break
|
||||
}
|
||||
}
|
||||
val mDismissed = cls.getDeclaredField("mDismissed")
|
||||
val mShownByMe = cls.getDeclaredField("mShownByMe")
|
||||
mDismissed.isAccessible = true
|
||||
mShownByMe.isAccessible = true
|
||||
mDismissed.setBoolean(this, false)
|
||||
mShownByMe.setBoolean(this, true)
|
||||
if (isAdded) { //解决方法就是添加这行代码,如果已经添加了,就移除掉然后再show,就不会出现Fragment already added的错误了。
|
||||
return
|
||||
}
|
||||
val ft: FragmentTransaction = manager.beginTransaction()
|
||||
ft.add(this, tag)
|
||||
ft.commitAllowingStateLoss()
|
||||
} catch (e: Exception) {
|
||||
Log.e("DialogFragment", "show", e.fillInStackTrace())
|
||||
}
|
||||
}
|
||||
|
||||
override fun onViewStateRestored(savedInstanceState: Bundle?) {
|
||||
CallerLogger.d(M_BUS_P+ TAG, "onViewStateRestored")
|
||||
|
||||
super.onViewStateRestored(savedInstanceState)
|
||||
}
|
||||
|
||||
companion object {
|
||||
const val TAG = "BusPassengerFunctionFragment"
|
||||
|
||||
@JvmStatic
|
||||
fun newInstance(): OrderInfoDialogFragment {
|
||||
val args = Bundle()
|
||||
val fragment = OrderInfoDialogFragment()
|
||||
fragment.arguments = args
|
||||
return fragment
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,12 +1,9 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment.fragment
|
||||
|
||||
import android.os.Bundle
|
||||
import com.mogo.commons.mvp.MvpFragment
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionDevicePresenter
|
||||
import com.mogo.och.common.module.utils.SoundPoolHelper
|
||||
import kotlinx.android.synthetic.main.m1_devices_fragment.*
|
||||
|
||||
/**
|
||||
* @author: yangyakun
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment.fragment
|
||||
|
||||
import android.animation.ObjectAnimator
|
||||
import android.os.Bundle
|
||||
@@ -19,6 +19,7 @@ import com.mogo.och.bus.passenger.model.OrderStatusEnum
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionOrderPresenter
|
||||
import com.mogo.och.bus.passenger.ui.adapter.OrderLineItemAdapter
|
||||
import com.mogo.och.bus.passenger.ui.adapter.OrderSiteItemAdapter
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
import com.mogo.och.bus.passenger.view.BottomDecoration
|
||||
import kotlinx.android.synthetic.main.m1_order_fragment.*
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
@@ -27,8 +28,8 @@ import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
* @author: yangyakun
|
||||
* @date: 2023/1/28
|
||||
*/
|
||||
class M1OrderFragment :
|
||||
MvpFragment<M1OrderFragment?, BusPassengerFunctionOrderPresenter?>() {
|
||||
class M1OrderLineFragment :
|
||||
MvpFragment<M1OrderLineFragment?, BusPassengerFunctionOrderPresenter?>() {
|
||||
|
||||
private var changeCheck: M1ContainFragment.ChangeCheck? = null
|
||||
|
||||
@@ -245,9 +246,9 @@ class M1OrderFragment :
|
||||
const val TAG = "BusPassengerFunctionOrderFragment"
|
||||
|
||||
@JvmStatic
|
||||
fun newInstance(changeCheck: M1ContainFragment.ChangeCheck): M1OrderFragment {
|
||||
fun newInstance(changeCheck: M1ContainFragment.ChangeCheck): M1OrderLineFragment {
|
||||
val args = Bundle()
|
||||
val fragment = M1OrderFragment()
|
||||
val fragment = M1OrderLineFragment()
|
||||
fragment.arguments = args
|
||||
fragment.changeCheck = changeCheck
|
||||
return fragment
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment.fragment
|
||||
|
||||
import android.animation.ObjectAnimator
|
||||
import android.animation.ValueAnimator
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.och.bus.passenger.ui
|
||||
package com.mogo.och.bus.passenger.ui.dialogfragment.fragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.View
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import kotlinx.android.synthetic.main.m1_bottom_bar.view.*
|
||||
|
||||
class BottomBar @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : ConstraintLayout(context, attrs, defStyleAttr) {
|
||||
init {
|
||||
isClickable = true
|
||||
LayoutInflater.from(context).inflate(R.layout.m1_bottom_bar, this, true)
|
||||
setBackgroundResource(R.drawable.charter_p_bottom_bar_bg)
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
}
|
||||
|
||||
fun setSettingClickListener(click:OnClickListener){
|
||||
actv_setting.setOnClickListener(click)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,128 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
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.ToastUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.common.module.utils.SoundPoolHelper
|
||||
import kotlinx.android.synthetic.main.m1_bottom_stop_site.view.*
|
||||
|
||||
open class BottomClickView @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 showBackageView = true
|
||||
|
||||
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
|
||||
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))
|
||||
if(showBackageView) {
|
||||
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))
|
||||
if(showBackageView) {
|
||||
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))
|
||||
if(showBackageView) {
|
||||
backageView?.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
return false
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
fun setCheckItem(isCheck:Boolean){
|
||||
if(isCheck!=showBackageView){
|
||||
showBackageView = isCheck
|
||||
notifiBackageView()
|
||||
}
|
||||
}
|
||||
|
||||
private fun notifiBackageView() {
|
||||
if(showBackageView){
|
||||
backageView?.visibility = View.VISIBLE
|
||||
}else{
|
||||
backageView?.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
parent?.let {
|
||||
if (parent is ConstraintLayout) {
|
||||
if (backageViewId > 0) {
|
||||
backageView = (parent as ConstraintLayout).findViewById(backageViewId)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,12 +1,14 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.door
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom.impl
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerChassisLocationGCJ02ListenerManager
|
||||
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.ui.view.bottom.BottomClickView
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
@@ -17,7 +19,7 @@ class CloseDoorView @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : AppCompatTextView(context, attrs, defStyleAttr) {
|
||||
) : BottomClickView(context, attrs, defStyleAttr) {
|
||||
|
||||
init {
|
||||
setOnClickListener {
|
||||
@@ -27,6 +29,6 @@ class CloseDoorView @JvmOverloads constructor(
|
||||
|
||||
private fun go2OpenDoor(){
|
||||
LightAirconditionDoorManager.go2OpenDoor(false)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(ActivityUtils.getActivityByContext(context), R.raw.bus_di)
|
||||
}
|
||||
}
|
||||
@@ -1,15 +1,22 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.stopsite
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom.impl
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_BUS_P
|
||||
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.common.module.utils.SoundPoolHelper
|
||||
import kotlinx.android.synthetic.main.m1_bottom_bar.view.*
|
||||
|
||||
class GoView @JvmOverloads constructor(
|
||||
context: Context,
|
||||
@@ -17,10 +24,34 @@ class GoView @JvmOverloads constructor(
|
||||
defStyleAttr: Int = 0
|
||||
) : AppCompatTextView(context, attrs, defStyleAttr) {
|
||||
|
||||
companion object{
|
||||
private const val TAG = "GoView"
|
||||
}
|
||||
|
||||
init {
|
||||
setOnClickListener {
|
||||
startGo()
|
||||
}
|
||||
setBackgroundResource(R.drawable.charter_p_bottom_center_normal)
|
||||
setOnTouchListener(object :OnTouchListener{
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
override fun onTouch(v: View?, event: MotionEvent?): Boolean {
|
||||
when (event?.action) {
|
||||
MotionEvent.ACTION_DOWN -> {
|
||||
CallerLogger.d(M_BUS_P + TAG, "ACTION_DOWN")
|
||||
setBackgroundResource(R.drawable.charter_p_bottom_center_press)
|
||||
}
|
||||
MotionEvent.ACTION_UP -> {
|
||||
CallerLogger.d(M_BUS_P + TAG, "ACTION_UP")
|
||||
setBackgroundResource(R.drawable.charter_p_bottom_center_normal)
|
||||
}
|
||||
MotionEvent.ACTION_CANCEL -> {
|
||||
CallerLogger.d(M_BUS_P + TAG, "ACTION_CANCEL")
|
||||
setBackgroundResource(R.drawable.charter_p_bottom_center_normal)
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
return false
|
||||
}
|
||||
})
|
||||
setOnClickListener { startGo() }
|
||||
}
|
||||
|
||||
private fun startGo(){
|
||||
@@ -45,6 +76,6 @@ class GoView @JvmOverloads constructor(
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(ActivityUtils.getActivityByContext(context), R.raw.bus_di)
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.door
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom.impl
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import com.mogo.eagle.core.utilcode.util.ActivityUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager
|
||||
import com.mogo.och.common.module.utils.SoundPoolHelper
|
||||
|
||||
@@ -11,7 +13,7 @@ class OpenDoorView @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : AppCompatTextView(context, attrs, defStyleAttr) {
|
||||
) : BottomClickView(context, attrs, defStyleAttr) {
|
||||
|
||||
init {
|
||||
setOnClickListener {
|
||||
@@ -21,7 +23,7 @@ class OpenDoorView @JvmOverloads constructor(
|
||||
|
||||
private fun go2OpenDoor(){
|
||||
LightAirconditionDoorManager.go2OpenDoor(true)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(ActivityUtils.getActivityByContext(context), R.raw.bus_di)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,20 +1,32 @@
|
||||
package com.mogo.och.bus.passenger.ui.view.stopsite
|
||||
package com.mogo.och.bus.passenger.ui.view.bottom.impl
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import android.view.LayoutInflater
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotControlManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListenerManager
|
||||
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.ToastUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView
|
||||
import com.mogo.och.common.module.utils.SoundPoolHelper
|
||||
|
||||
class StopSiteView @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : AppCompatTextView(context, attrs, defStyleAttr) {
|
||||
) : BottomClickView(context, attrs, defStyleAttr) {
|
||||
|
||||
companion object{
|
||||
private const val TAG = "StopSiteView"
|
||||
}
|
||||
|
||||
init {
|
||||
setOnClickListener {
|
||||
@@ -39,6 +51,6 @@ class StopSiteView @JvmOverloads constructor(
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(context, R.raw.bus_di)
|
||||
SoundPoolHelper.getSoundPoolHelper().playSoundWithRedId(ActivityUtils.getActivityByContext(context), R.raw.bus_di)
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 62 KiB |
|
After Width: | Height: | Size: 51 KiB |
|
After Width: | Height: | Size: 31 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 6.5 KiB |
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/charter_p_bottom_center_press" android:state_pressed="true"/>
|
||||
<item android:drawable="@drawable/charter_p_bottom_center_normal" android:state_pressed="false"/>
|
||||
<item android:drawable="@drawable/charter_p_bottom_center_normal"/>
|
||||
</selector>
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
<item
|
||||
android:drawable="@drawable/charter_p_bottom_opendoor_normal_nor_src" android:gravity="center"
|
||||
android:width="@dimen/dp_90"
|
||||
android:height="@dimen/dp_90"/>
|
||||
</layer-list >
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||
<item
|
||||
android:drawable="@drawable/charter_p_bottom_opendoor_normal_press_src" android:gravity="center"
|
||||
android:width="@dimen/dp_90"
|
||||
android:height="@dimen/dp_90"/>
|
||||
</layer-list >
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/charter_p_bottom_opendoor_press" android:state_pressed="true"/>
|
||||
<item android:drawable="@drawable/charter_p_bottom_opendoor_normal" android:state_pressed="false"/>
|
||||
<item android:drawable="@drawable/charter_p_bottom_opendoor_normal"/>
|
||||
</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_39"/>
|
||||
<gradient android:startColor="@color/bus_p_m1_1466FB" android:endColor="@color/bus_p_m1_43CEFE"/>
|
||||
</shape>
|
||||
@@ -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_39"/>
|
||||
<solid android:color="@color/bus_p_m1_9aabd2"/>
|
||||
</shape>
|
||||
@@ -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_36"/>
|
||||
<solid android:color="@color/bus_p_m1_f0e0efff"/>
|
||||
</shape>
|
||||
@@ -0,0 +1,198 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_107"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout"
|
||||
tools:ignore="MissingDefaultResource">
|
||||
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.GoView
|
||||
android:id="@+id/aciv_center_image"
|
||||
android:text="出发"
|
||||
android:gravity="center"
|
||||
android:textSize="@dimen/dp_48"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:textColor="@android:color/white"
|
||||
android:layout_width="@dimen/dp_489"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/actv_stop_site_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_stop_site"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_stop_site"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.StopSiteView
|
||||
android:id="@+id/actv_stop_site"
|
||||
app:backageViewId="@+id/actv_stop_site_press"
|
||||
app:selectedDrawable="@drawable/charter_p_bottom_stopsite_press"
|
||||
app:normalDrawable="@drawable/charter_p_bottom_stopsite_normal"
|
||||
app:bottomTitle="靠边停车"
|
||||
app:layout_constraintStart_toEndOf="@+id/aciv_center_image"
|
||||
app:layout_constraintEnd_toStartOf="@+id/actv_close_door"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/actv_close_door_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_close_door"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_close_door"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.CloseDoorView
|
||||
android:id="@+id/actv_close_door"
|
||||
app:backageViewId="@+id/actv_close_door_press"
|
||||
app:selectedDrawable="@drawable/charter_p_bottom_closedoor_press"
|
||||
app:normalDrawable="@drawable/charter_p_bottom_closedoor_normal"
|
||||
app:bottomTitle="关车门"
|
||||
app:layout_constraintStart_toEndOf="@+id/actv_stop_site"
|
||||
app:layout_constraintEnd_toStartOf="@+id/actv_open_door"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/actv_open_door_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_open_door"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_open_door"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.OpenDoorView
|
||||
android:id="@+id/actv_open_door"
|
||||
android:gravity="center"
|
||||
app:backageViewId="@+id/actv_open_door_press"
|
||||
app:selectedDrawable="@drawable/charter_p_bottom_opendoor_press"
|
||||
app:normalDrawable="@drawable/charter_p_bottom_opendoor_normal"
|
||||
app:bottomTitle="开车门"
|
||||
app:layout_constraintStart_toEndOf="@+id/actv_close_door"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/cl_order_time_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/cl_order_time"
|
||||
app:layout_constraintEnd_toEndOf="@+id/cl_order_time"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:id="@+id/cl_order_time"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/actv_setting"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintHorizontal_chainStyle="spread"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_null"
|
||||
android:text="订单空空~"
|
||||
android:textSize="@dimen/dp_36"
|
||||
android:textColor="@color/bus_p_m1_090f28"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_end_time"
|
||||
android:text="08:15"
|
||||
android:textSize="@dimen/dp_60"
|
||||
android:textColor="@color/bus_p_m1_0050E1"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_end_time_title"
|
||||
android:text="剩余包车时长"
|
||||
android:textSize="@dimen/dp_20"
|
||||
android:textColor="@color/bus_p_m1_090f28"
|
||||
android:layout_marginBottom="@dimen/dp_7_5"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/clg_order_info"
|
||||
android:visibility="gone"
|
||||
app:constraint_referenced_ids="actv_order_end_time,actv_order_end_time_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/actv_setting_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_setting"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_setting"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView
|
||||
android:id="@+id/actv_setting"
|
||||
app:backageViewId="@+id/actv_setting_press"
|
||||
app:selectedDrawable="@drawable/charter_p_bottom_softsettiing_press"
|
||||
app:normalDrawable="@drawable/charter_p_bottom_softsettiing_normal"
|
||||
app:bottomTitle="设置"
|
||||
app:layout_constraintStart_toEndOf="@+id/cl_order_time"
|
||||
app:layout_constraintEnd_toStartOf="@+id/actv_line"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/actv_line_press"
|
||||
android:visibility="gone"
|
||||
android:src="@drawable/charter_bottom_bar_select_bg"
|
||||
app:layout_constraintStart_toStartOf="@+id/actv_line"
|
||||
app:layout_constraintEnd_toEndOf="@+id/actv_line"
|
||||
android:layout_width="@dimen/dp_359"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.BottomClickView
|
||||
android:id="@+id/actv_line"
|
||||
app:backageViewId="@+id/actv_line_press"
|
||||
app:selectedDrawable="@drawable/charter_p_bottom_line_press"
|
||||
app:normalDrawable="@drawable/charter_p_bottom_line_normal"
|
||||
app:bottomTitle="线路"
|
||||
app:layout_constraintStart_toEndOf="@+id/actv_setting"
|
||||
app:layout_constraintEnd_toStartOf="@+id/aciv_center_image"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
</merge>
|
||||
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_107"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout"
|
||||
tools:ignore="MissingDefaultResource">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/aciv_center_image"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_width="@dimen/dp_90"
|
||||
android:layout_height="@dimen/dp_90"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_title"
|
||||
app:layout_constraintStart_toStartOf="@+id/aciv_center_image"
|
||||
app:layout_constraintEnd_toEndOf="@+id/aciv_center_image"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginBottom="@dimen/dp_9_5"
|
||||
android:textSize="@dimen/dp_20"
|
||||
android:text="靠边停车"
|
||||
android:textColor="@color/bus_p_m1_090f28"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
</merge>
|
||||
@@ -16,7 +16,7 @@
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintWidth_percent="0.4589">
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.stopsite.GoView
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.GoView
|
||||
android:id="@+id/tv_car_setting_go"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -32,7 +32,7 @@
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintVertical_bias="0.492" />
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.stopsite.StopSiteView
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.StopSiteView
|
||||
android:id="@+id/tv_car_setting_stopside"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -47,7 +47,7 @@
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_car_setting_go"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.door.CloseDoorView
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.CloseDoorView
|
||||
android:id="@+id/tv_car_setting_opendoor"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -62,7 +62,7 @@
|
||||
app:layout_constraintStart_toEndOf="@+id/tv_car_setting_stopside"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.door.OpenDoorView
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.impl.OpenDoorView
|
||||
android:id="@+id/tv_car_setting_closedoor"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
app:layout_constraintEnd_toEndOf="@+id/mapBizView"
|
||||
app:layout_constraintStart_toStartOf="parent" />
|
||||
|
||||
|
||||
<!-- 速度 -->
|
||||
<LinearLayout
|
||||
android:id="@+id/ll_car_speed"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
@@ -90,7 +90,7 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
</LinearLayout>
|
||||
|
||||
<!-- 距离、剩余时间、到达时间 -->
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
app:layout_constraintTop_toBottomOf="@+id/ll_car_speed"
|
||||
app:layout_constraintStart_toStartOf="@+id/ll_car_speed"
|
||||
@@ -196,50 +196,13 @@
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/cb_bp_video_player"
|
||||
android:src="@drawable/bus_p_function_bottom_information_bg_selector"
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.BottomBar
|
||||
android:id="@+id/bb_boorombar"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintHorizontal_chainStyle="packed"
|
||||
app:layout_constraintEnd_toStartOf="@+id/cb_bp_setting_soft"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="@dimen/dp_181"
|
||||
android:layout_height="@dimen/dp_179"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/cb_bp_setting_soft"
|
||||
android:src="@drawable/bus_p_function_bottom_soft_bg_selector"
|
||||
app:layout_constraintStart_toEndOf="@+id/cb_bp_video_player"
|
||||
app:layout_constraintEnd_toStartOf="@+id/cb_bp_setting_device"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="@dimen/dp_181"
|
||||
android:layout_height="@dimen/dp_179"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/cb_bp_setting_device"
|
||||
android:src="@drawable/bus_p_function_bottom_device_bg_selector"
|
||||
app:layout_constraintEnd_toEndOf="@+id/cb_bp_setting_order"
|
||||
app:layout_constraintStart_toEndOf="@+id/cb_bp_setting_soft"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="@dimen/dp_181"
|
||||
android:layout_height="@dimen/dp_179"/>
|
||||
<ImageView
|
||||
android:id="@+id/cb_bp_setting_order"
|
||||
android:src="@drawable/bus_p_function_bottom_order_bg_selector"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/cb_bp_setting_device"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_width="@dimen/dp_181"
|
||||
android:layout_height="@dimen/dp_179"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_end_order"
|
||||
android:src="@drawable/m1_order_end"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="-14dp"
|
||||
android:layout_width="@dimen/dp_181"
|
||||
android:layout_height="@dimen/dp_179"/>
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
|
||||
<!--消息盒子选择入口-->
|
||||
|
||||
@@ -0,0 +1,154 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/cl_container_order_info"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:background="@drawable/charter_p_shape_order_info"
|
||||
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">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_phone"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_33"
|
||||
android:text="18811539480"
|
||||
android:textSize="@dimen/dp_20"
|
||||
android:textColor="@color/bus_p_m1_203555"
|
||||
android:layout_marginTop="@dimen/dp_32"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_times"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_31"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_order_phone"
|
||||
android:text="09:00-18:00"
|
||||
android:textSize="@dimen/dp_36"
|
||||
android:textColor="@color/bus_p_m1_0050E1"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_order_times_title"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_8"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_order_times"
|
||||
android:text="用车时间"
|
||||
android:textSize="@dimen/dp_18"
|
||||
android:textColor="@color/bus_p_m1_112b57"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_end_order"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_order_times_title"
|
||||
android:layout_marginTop="@dimen/dp_25"
|
||||
android:layout_marginBottom="@dimen/dp_27"
|
||||
android:background="@drawable/charter_p_shape_end_order"
|
||||
android:gravity="center"
|
||||
android:text="结束用车"
|
||||
android:textSize="@dimen/dp_18"
|
||||
android:paddingEnd="@dimen/dp_42"
|
||||
android:paddingStart="@dimen/dp_42"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:textColor="@android:color/white"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:background="@drawable/charter_p_shape_order_info"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
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">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:text="剩余时间 02:37"
|
||||
android:textSize="@dimen/dp_20"
|
||||
android:textColor="@color/bus_p_m1_5F7096"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_33"
|
||||
android:layout_marginEnd="@dimen/dp_32"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_end_order_content"
|
||||
android:text="要提前说再见了吗?蘑菇小助手很舍不得您呢!"
|
||||
android:textSize="@dimen/dp_26"
|
||||
android:textColor="@color/bus_p_m1_112b57"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_92"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:text="结束用车"
|
||||
android:textSize="@dimen/dp_24"
|
||||
android:textColor="@android:color/white"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_end_order_content"
|
||||
android:background="@drawable/charter_p_shape_end_order_left"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_17"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:paddingStart="@dimen/dp_32"
|
||||
android:paddingEnd="@dimen/dp_32"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:text="结束用车"
|
||||
android:textSize="@dimen/dp_24"
|
||||
android:textColor="@android:color/white"
|
||||
android:background="@drawable/charter_p_shape_end_order"
|
||||
app:layout_constraintTop_toBottomOf="@+id/actv_end_order_content"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:layout_marginTop="@dimen/dp_17"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:paddingStart="@dimen/dp_32"
|
||||
android:paddingEnd="@dimen/dp_32"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
|
||||
<com.mogo.och.bus.passenger.ui.view.bottom.BottomBar
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_107"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -5,4 +5,14 @@
|
||||
<attr name="main_wind_drawable" format="reference" />
|
||||
</declare-styleable>
|
||||
|
||||
<declare-styleable name="BottomSelectView">
|
||||
<!-- 默认图片 -->
|
||||
<attr name="normalDrawable" format="reference" />
|
||||
<!-- 点击图片 -->
|
||||
<attr name="selectedDrawable" format="reference" />
|
||||
<!-- 显示背景view -->
|
||||
<attr name="backageViewId" format="reference" />
|
||||
<attr name="bottomTitle" format="string"/>
|
||||
</declare-styleable>
|
||||
|
||||
</resources>
|
||||
@@ -18,12 +18,18 @@
|
||||
<color name="bus_p_m1_4a5375">#4A5375</color>
|
||||
<color name="bus_p_m1_0f1e57">#0F1E57</color>
|
||||
<color name="bus_p_m1_225eff">#225EFF</color>
|
||||
<color name="bus_p_m1_0050E1">#0050E1</color>
|
||||
<color name="bus_p_m1_1466FB">#1466FB</color>
|
||||
<color name="bus_p_m1_43CEFE">#43CEFE</color>
|
||||
<color name="bus_p_m1_3b4056">#3B4056</color>
|
||||
<color name="bus_p_m1_23293b">#23293B</color>
|
||||
<color name="bus_p_m1_485173">#485173</color>
|
||||
<color name="bus_p_m1_292c39">#292C39</color>
|
||||
<color name="bus_p_m1_2C2D31">#2C2D31</color>
|
||||
<color name="bus_p_m1_222222">#222222</color>
|
||||
<color name="bus_p_m1_090f28">#090F28</color>
|
||||
<color name="bus_p_m1_5F7096">#5F7096</color>
|
||||
<color name="bus_p_m1_9aabd2">#9AABD2</color>
|
||||
<color name="bus_p_m1_662C2D31">#662C2D31</color>
|
||||
<color name="bus_p_m1_332C2D31">#332C2D31</color>
|
||||
|
||||
@@ -34,4 +40,5 @@
|
||||
<color name="bus_p_m1_91EFF6FF">#91EFF6FF</color>
|
||||
<color name="bus_p_m1_CCFFFFFF">#CCFFFFFF</color>
|
||||
<color name="bus_p_m1_80ffffff">#80FFFFFF</color>
|
||||
<color name="bus_p_m1_f0e0efff">#F0E0EFFF </color>
|
||||
</resources>
|
||||
@@ -34,6 +34,8 @@
|
||||
<string name="m1_arrive_left_time">剩余(分)</string>
|
||||
<string name="m1_reach_time">到达</string>
|
||||
|
||||
<string name="m1_stop_site">靠边停车</string>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
<dimen name="dp_7_5">7.5dp</dimen>
|
||||
<dimen name="dp_8">8dp</dimen>
|
||||
<dimen name="dp_9">9dp</dimen>
|
||||
<dimen name="dp_9_5">9.5dp</dimen>
|
||||
<dimen name="dp_10">10dp</dimen>
|
||||
<dimen name="dp_11">11dp</dimen>
|
||||
<dimen name="dp_12">12dp</dimen>
|
||||
|
||||