Merge branch 'dev_minibus-d_230425_3.2.0' of gitlab.zhidaoauto.com:SCA/L4HA/AndroidApp/MoGoEagleEye into dev_minibus-d_230425_3.2.0
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package com.mogo.och.bus.passenger;
|
||||
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_BUS_P;
|
||||
import static com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.M_TAXI_P;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 21 KiB |
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android" tools:ignore="MissingDefaultResource">
|
||||
<item android:drawable="@drawable/iv_roma_bus_passenger_press_bg" android:state_focused="true" android:state_pressed="true" />
|
||||
<item android:drawable="@drawable/iv_roma_bus_passenger_press_bg" android:state_focused="false" android:state_pressed="true" />
|
||||
<item android:drawable="@drawable/iv_roma_bus_passenger_press_bg" android:state_selected="true" />
|
||||
<item android:drawable="@drawable/iv_roma_bus_passenger_press_bg" android:state_focused="true" />
|
||||
<item android:drawable="@drawable/iv_roma_bus_passenger_bg" />
|
||||
</selector>
|
||||
@@ -31,6 +31,18 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
<com.mogo.eagle.core.function.hmi.ui.widget.RomaPassengerView
|
||||
android:id="@+id/ivMoGoLogo"
|
||||
android:layout_width="@dimen/dp_121"
|
||||
android:layout_height="@dimen/dp_121"
|
||||
android:layout_marginRight="@dimen/dp_751"
|
||||
android:layout_marginBottom="@dimen/dp_59"
|
||||
android:background="@drawable/roma_bus_p_bg_selector"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:roma_close="@drawable/roma_bus_p_bg_selector"
|
||||
app:roma_open="@drawable/iv_roma_bus_passenger_press_bg" />
|
||||
|
||||
<!--pnc行为决策-->
|
||||
<com.mogo.eagle.core.function.hmi.ui.vehicle.PncActionsView
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
@@ -3,4 +3,4 @@ package com.mogo.och.bus.passenger.bean.event
|
||||
import com.mogo.och.bus.passenger.bean.response.LineInfoResponse
|
||||
import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse
|
||||
|
||||
data class EventLineSites(val lineInfo: LineInfoResponse.LineInfo, val sites: List<SiteInfoResponse.SiteInfo>)
|
||||
data class EventLineSites(val lineInfo: LineInfoResponse.LineInfo?, val sites: List<SiteInfoResponse.SiteInfo>?, val clear:Boolean=false)
|
||||
@@ -102,7 +102,7 @@ class BusPassengerFunctionOrderPresenter(view: M1OrderLineFragment?) :
|
||||
override fun onSuccess(data: SiteInfoResponse?) {
|
||||
if (data?.data == null) return
|
||||
val siteInfos = data.data
|
||||
EventBus.getDefault().post(EventLineSites(checkLine,data.data))
|
||||
EventBus.getDefault().post(EventLineSites(checkLine,siteInfos,false))
|
||||
if (siteInfos.isNotEmpty()) {
|
||||
// 计算当前站点是那个
|
||||
val calculateCurrentSite =
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
package com.mogo.och.bus.passenger.presenter
|
||||
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
import android.graphics.Canvas
|
||||
import android.view.View
|
||||
import androidx.lifecycle.LifecycleOwner
|
||||
import com.amap.api.maps.model.LatLng
|
||||
import com.mogo.commons.voice.AIAssist
|
||||
@@ -26,20 +29,25 @@ import com.mogo.och.bus.passenger.model.CharterPassengerModel
|
||||
import com.mogo.och.bus.passenger.model.IOrderStatusChangeListener
|
||||
import com.mogo.och.bus.passenger.model.OrderStatusEnum
|
||||
import com.mogo.och.bus.passenger.ui.MainFragment
|
||||
import com.mogo.och.bus.passenger.view.MakerWithSiteName
|
||||
import com.mogo.och.bus.passenger.view.MakerWithSiteNamewithCheck
|
||||
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg
|
||||
import com.mogo.och.common.module.bean.dpmsg.DPCommonOperationMsg
|
||||
import com.mogo.och.common.module.bean.dpmsg.DPMsgType
|
||||
import com.mogo.och.common.module.biz.common.socketmessage.OCHSocketMessageManager
|
||||
import com.mogo.och.common.module.biz.constant.OchCommonConst
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
|
||||
import com.mogo.och.common.module.manager.OCHPlanningStopSideStatusManager
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorStatusManager
|
||||
import com.mogo.och.common.module.utils.CoordinateCalculateRouteUtil
|
||||
import com.mogo.och.common.module.utils.DateTimeUtil
|
||||
import com.mogo.och.common.module.utils.NumberFormatUtil
|
||||
import com.mogo.och.common.module.utils.SoundPoolHelper
|
||||
import com.mogo.och.common.module.voice.VoiceNotice
|
||||
import com.mogo.och.common.module.bean.dpmsg.BaseDPMsg
|
||||
import com.mogo.och.common.module.bean.dpmsg.DPCommonOperationMsg
|
||||
import com.mogo.och.common.module.biz.network.OchCommonServiceCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorCallback
|
||||
import com.mogo.och.common.module.manager.devicemanage.LightAirconditionDoorManager
|
||||
import me.jessyan.autosize.utils.AutoSizeUtils
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
import kotlin.math.ceil
|
||||
|
||||
class BusPassengerPresenter(view: MainFragment?) :
|
||||
@@ -47,6 +55,8 @@ class BusPassengerPresenter(view: MainFragment?) :
|
||||
IDistanceCallback, IOrderChangeCallback, IOrderStatusChangeListener,
|
||||
OCHPlanningStopSideStatusManager.OCHPlanningActionsCallback, LightAirconditionDoorCallback {
|
||||
|
||||
private val lindIdAndView = ConcurrentHashMap<Long, MakerWithSiteNamewithCheck?>()
|
||||
|
||||
override fun onCreate(owner: LifecycleOwner) {
|
||||
super.onCreate(owner)
|
||||
CharterPassengerModel.init()
|
||||
@@ -273,7 +283,7 @@ class BusPassengerPresenter(view: MainFragment?) :
|
||||
it.forEach {latLngMain ->
|
||||
trajectoryList.add(latLngMain.exchangeData())
|
||||
}
|
||||
drawStations(sites)
|
||||
drawStationInfo(sites)
|
||||
mView?.drawOverMapViewTrajectory(trajectoryList)
|
||||
}
|
||||
}
|
||||
@@ -286,12 +296,67 @@ class BusPassengerPresenter(view: MainFragment?) :
|
||||
|
||||
}
|
||||
|
||||
fun drawStations(sites: List<SiteInfoResponse.SiteInfo>){
|
||||
fun drawStationInfo(sites: List<SiteInfoResponse.SiteInfo>){
|
||||
val stationsList: MutableList<SiteMarkerBean> = mutableListOf()
|
||||
val stationsNameList: MutableList<SiteMarkerBean> = mutableListOf()
|
||||
val stationIcon = BitmapFactory.decodeResource(context.resources, R.drawable.map_staton_icon)
|
||||
sites.forEach {
|
||||
stationsList.add(SiteMarkerBean(LatLng(it.GcjLat!!,it.GcjLon!!),stationIcon,0.5f,0.5f))
|
||||
val bitmap = getBitmap(it.siteId!!,it.siteName ?: "", it.isCheck)
|
||||
stationsNameList.add(SiteMarkerBean(LatLng(it.GcjLat,it.GcjLon),bitmap,0.0f,0.2f))
|
||||
}
|
||||
mView?.drawOverMapViewStation(stationsList)
|
||||
mView?.drawOverMapViewStation(stationsList,stationsNameList)
|
||||
}
|
||||
|
||||
private fun getBitmap(siteId:Long,siteName: String,isCheck:Boolean): Bitmap {
|
||||
var siteView = lindIdAndView[siteId]
|
||||
if(siteView==null){
|
||||
val marker = MakerWithSiteName(context)
|
||||
marker.setTextAndCheck(siteName,isCheck)
|
||||
marker.measure(
|
||||
View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 145f), View.MeasureSpec.UNSPECIFIED),
|
||||
View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 34f), View.MeasureSpec.EXACTLY)
|
||||
)
|
||||
marker.layout(0, 0, marker.measuredWidth, marker.measuredHeight)
|
||||
val bitmap = Bitmap.createBitmap(marker.width, marker.height, Bitmap.Config.ARGB_8888)
|
||||
marker.draw(Canvas(bitmap))
|
||||
siteView = MakerWithSiteNamewithCheck(isCheck,marker,bitmap)
|
||||
lindIdAndView[siteId] = siteView
|
||||
}else{
|
||||
CallerLogger.d(M_BUS_P + TAG, "缓存View:$siteName---${siteView.isCheck}-----$isCheck")
|
||||
if (siteView.isCheck != isCheck) {
|
||||
val marker = siteView.makerWithSiteName
|
||||
marker.setTextAndCheck(siteName,isCheck)
|
||||
marker.measure(
|
||||
View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 145f), View.MeasureSpec.UNSPECIFIED),
|
||||
View.MeasureSpec.makeMeasureSpec(AutoSizeUtils.dp2px(context, 34f), View.MeasureSpec.UNSPECIFIED)
|
||||
)
|
||||
marker.layout(0, 0, marker.measuredWidth, marker.measuredHeight)
|
||||
val bitmap = Bitmap.createBitmap(marker.width, marker.height, Bitmap.Config.ARGB_8888)
|
||||
marker.draw(Canvas(bitmap))
|
||||
siteView.isCheck = isCheck
|
||||
siteView.bitmapView = bitmap
|
||||
}
|
||||
}
|
||||
return siteView.bitmapView
|
||||
}
|
||||
|
||||
fun drawEndStation() {
|
||||
val currentOrderInfo = CharterPassengerModel.getCurrentOrderInfo()
|
||||
currentOrderInfo?.let {
|
||||
if (it.wgs84Lon != null && it.wgs84Lat != null && it.siteId != null && it.siteName != null) {
|
||||
val coordinateConverterWgsToGcj =
|
||||
CoordinateCalculateRouteUtil.coordinateConverterWgsToGcj(
|
||||
context,
|
||||
it.wgs84Lon!!,
|
||||
it.wgs84Lat!!
|
||||
)
|
||||
setEndStationCallBack(
|
||||
it.siteId, it.siteName,
|
||||
coordinateConverterWgsToGcj.longitude, coordinateConverterWgsToGcj.latitude
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -13,6 +13,7 @@ import com.mogo.commons.mvp.MvpFragment
|
||||
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.function.view.SiteMarkerBean
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
@@ -28,6 +29,7 @@ import com.mogo.och.bus.passenger.model.CharterPassengerModel
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerPresenter
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1CarUserNoOrderFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.M1ContainFragment
|
||||
import com.mogo.och.bus.passenger.view.statusbar.StatusBarView
|
||||
import com.mogo.och.common.module.biz.constant.LoginStatusManager
|
||||
import com.mogo.och.common.module.voice.VoiceManager
|
||||
import kotlinx.android.synthetic.main.m1_main_fragment.*
|
||||
@@ -46,8 +48,12 @@ class MainFragment :
|
||||
private var bpFunctionGroupDialogFragment: WeakReference<M1ContainFragment>? = null
|
||||
private var m1CarUserNoOrderFragment: WeakReference<M1CarUserNoOrderFragment>? = null
|
||||
|
||||
val endStation =
|
||||
BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources, R.drawable.m1_small_map_view_dir_end)
|
||||
private val endStation =
|
||||
BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources,
|
||||
R.drawable.m1_small_map_view_dir_end)
|
||||
private val lineTrajectory =
|
||||
BitmapFactory.decodeResource(AbsMogoApplication.getApp().resources,
|
||||
com.mogo.eagle.core.function.map.R.drawable.taxi_map_arrow_arrived)
|
||||
|
||||
override fun getLayoutId(): Int {
|
||||
return R.layout.m1_main_fragment
|
||||
@@ -265,26 +271,57 @@ class MainFragment :
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
fun changeOverview(eventLineSites: EventLineSites) {
|
||||
CallerLogger.d(M_BUS_P + TAG, "eventLineSites:${eventLineSites.lineInfo.lineId}-----${eventLineSites.sites.size}")
|
||||
mPresenter?.getLineTrajectory(eventLineSites.lineInfo,eventLineSites.sites)
|
||||
CallerLogger.d(M_BUS_P + TAG, "eventLineSites:${eventLineSites.lineInfo?.lineId}")
|
||||
if(eventLineSites.clear){
|
||||
UiThreadHandler.post(
|
||||
{
|
||||
omvOverMap?.clearSitePolyline()
|
||||
omvOverMap?.includeSitePointsAndUpdateCamera(mutableListOf())
|
||||
omvOverMap?.clearSiteMarkers()
|
||||
omvOverMap?.clearSiteNameViews()
|
||||
mPresenter?.drawEndStation()
|
||||
},
|
||||
UiThreadHandler.MODE.QUEUE
|
||||
)
|
||||
} else {
|
||||
if(eventLineSites.lineInfo==null){//更新站点
|
||||
mPresenter?.drawStationInfo(eventLineSites.sites!!)
|
||||
}else{// 更新轨迹和站点
|
||||
mPresenter?.getLineTrajectory(eventLineSites.lineInfo,eventLineSites.sites!!)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
fun changeDebugView(debugView: DebugView) {
|
||||
if(debug_arrive_dest.visibility==View.GONE||debug_arrive_dest.visibility==View.INVISIBLE){
|
||||
debug_arrive_dest.visibility = View.VISIBLE
|
||||
}else{
|
||||
debug_arrive_dest.visibility = View.GONE
|
||||
}
|
||||
when (debugView.type) {
|
||||
StatusBarView.bizz -> {
|
||||
if(debug_arrive_dest.visibility==View.GONE||
|
||||
debug_arrive_dest.visibility==View.INVISIBLE){
|
||||
debug_arrive_dest.visibility = View.VISIBLE
|
||||
}else{
|
||||
debug_arrive_dest.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
else -> {
|
||||
ToggleDebugView.toggleDebugView.toggle(requireContext())
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun drawOverMapViewStation(stationsList: MutableList<SiteMarkerBean>){
|
||||
fun drawOverMapViewStation(stationsList: MutableList<SiteMarkerBean>,siteMarkers: List<SiteMarkerBean>?){
|
||||
omvOverMap?.clearSiteMarkers()
|
||||
omvOverMap?.clearSiteNameViews()
|
||||
omvOverMap?.drawSiteMarkers(stationsList)
|
||||
omvOverMap?.drawSiteNameViews(siteMarkers)
|
||||
}
|
||||
|
||||
fun drawOverMapViewTrajectory(coordinates: List<LatLng>){
|
||||
UiThreadHandler.post({
|
||||
omvOverMap?.drawPolyline(coordinates, 0)
|
||||
fun drawOverMapViewTrajectory(coordinates: List<LatLng>) {
|
||||
UiThreadHandler.post(
|
||||
{
|
||||
omvOverMap?.drawSitePolyline(coordinates, lineTrajectory)
|
||||
omvOverMap?.includeSitePointsAndUpdateCamera(coordinates)
|
||||
},
|
||||
UiThreadHandler.MODE.QUEUE
|
||||
)
|
||||
|
||||
@@ -10,8 +10,10 @@ import androidx.core.content.ContextCompat
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.bean.event.EventLineSites
|
||||
import com.mogo.och.bus.passenger.bean.response.LineInfoResponse
|
||||
import com.mogo.och.bus.passenger.bean.response.SiteInfoResponse
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
|
||||
/**
|
||||
* Created by adityagohad on 06/06/17.
|
||||
@@ -90,6 +92,7 @@ class OrderSiteItemAdapter(
|
||||
}
|
||||
}
|
||||
notifyDataSetChanged()
|
||||
EventBus.getDefault().post(EventLineSites(null,dataList,false))
|
||||
checkChangeListener?.onCheckListener(tempInfo)
|
||||
} else {
|
||||
if (siteInfo.isNear) {
|
||||
|
||||
@@ -16,6 +16,7 @@ import com.mogo.eagle.core.utilcode.util.BarUtils
|
||||
import com.mogo.eagle.core.utilcode.util.SharedPrefs
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.bus.passenger.R
|
||||
import com.mogo.och.bus.passenger.bean.event.EventLineSites
|
||||
import com.mogo.och.bus.passenger.presenter.BusPassengerFunctionPresenter
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1OrderLineFragment
|
||||
import com.mogo.och.bus.passenger.ui.dialogfragment.fragment.M1SoftFragment
|
||||
@@ -24,6 +25,7 @@ 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.*
|
||||
import org.greenrobot.eventbus.EventBus
|
||||
|
||||
/**
|
||||
* @author: yangyakun
|
||||
@@ -160,7 +162,7 @@ class M1ContainFragment :
|
||||
|
||||
override fun onDismiss(dialog: DialogInterface) {
|
||||
super.onDismiss(dialog)
|
||||
ToastUtils.showShort("消失了")
|
||||
EventBus.getDefault().post(EventLineSites(null,null,true))
|
||||
}
|
||||
|
||||
override fun onSaveInstanceState(outState: Bundle) {
|
||||
|
||||
@@ -76,7 +76,7 @@ class M1OrderLineFragment :
|
||||
LinearLayoutManager(context, LinearLayoutManager.VERTICAL, false)
|
||||
rv_site_list.addItemDecoration(
|
||||
BottomDecoration(
|
||||
AutoSizeUtils.dp2px(context, 60f)
|
||||
AutoSizeUtils.dp2px(context, 90f)
|
||||
)
|
||||
)
|
||||
rv_site_list.adapter = siteAdapter
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.mogo.och.bus.passenger.view
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Bitmap
|
||||
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.view_maker_sitename.view.*
|
||||
|
||||
class MakerWithSiteName @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : ConstraintLayout (
|
||||
context,
|
||||
attrs,
|
||||
defStyleAttr
|
||||
) {
|
||||
|
||||
init {
|
||||
LayoutInflater.from(context).inflate(R.layout.view_maker_sitename, this, true)
|
||||
}
|
||||
|
||||
fun setTextAndCheck(siteName: String,isCheck:Boolean) {
|
||||
tv_site_name.text = siteName
|
||||
tv_site_name.isChecked = isCheck
|
||||
}
|
||||
}
|
||||
|
||||
data class MakerWithSiteNamewithCheck(var isCheck: Boolean,val makerWithSiteName:MakerWithSiteName,var bitmapView: Bitmap)
|
||||
@@ -37,18 +37,20 @@ class StatusBarView @JvmOverloads constructor(
|
||||
const val TAG = "StatusBarView"
|
||||
private const val COUNTS = 4 // 点击次数
|
||||
private const val DURATION: Long = 1000 // 规定有效时间
|
||||
const val bizz = "bizz" // 业务debug
|
||||
const val debugView = "debugView" // 业务debug
|
||||
}
|
||||
|
||||
private var mHits = LongArray(COUNTS)
|
||||
|
||||
private fun continuousClick() {
|
||||
private fun continuousClick(type:String) {
|
||||
//每次点击时,数组向前移动一位
|
||||
System.arraycopy(mHits, 1, mHits, 0, mHits.size - 1)
|
||||
//为数组最后一位赋值
|
||||
mHits[mHits.size - 1] = SystemClock.uptimeMillis()
|
||||
if (mHits[0] >= (SystemClock.uptimeMillis() - DURATION)) {
|
||||
mHits = LongArray(COUNTS) //重新初始化数组
|
||||
EventBus.getDefault().post(DebugView("show"))
|
||||
EventBus.getDefault().post(DebugView(type))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,9 +78,9 @@ class StatusBarView @JvmOverloads constructor(
|
||||
|
||||
updateStatusBarRightView(FunctionBuildConfig.isDemoMode, "demoMode", DemoModeView(this.context))
|
||||
|
||||
bizz_view.setOnClickListener {
|
||||
continuousClick()
|
||||
}
|
||||
bizz_view.setOnClickListener { continuousClick(bizz) }
|
||||
|
||||
iv_biz_icon.setOnClickListener { continuousClick(debugView) }
|
||||
|
||||
progress.progress = 50
|
||||
tv_power_cos.text = "50%"
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:color="@android:color/white" android:state_checked="true" />
|
||||
<item android:color="@color/bus_p_m1_112b57" android:state_checked="false" />
|
||||
<item android:color="@color/bus_p_m1_112b57"/>
|
||||
</selector>
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:shape="rectangle">
|
||||
<corners android:bottomRightRadius="@dimen/dp_36" />
|
||||
<gradient
|
||||
android:angle="-90"
|
||||
android:endColor="@color/bus_p_m1_d7e5f5"
|
||||
android:startColor="@android:color/transparent" />
|
||||
</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_8"/>
|
||||
<solid android:color="@android:color/white"/>
|
||||
</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_8"/>
|
||||
<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"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:drawable="@drawable/charter_p_selct_site_name_shape_selected" android:state_checked="true"/>
|
||||
<item android:drawable="@drawable/charter_p_selct_site_name_shape_normal" android:state_checked="false"/>
|
||||
<item android:drawable="@drawable/charter_p_selct_site_name_shape_normal"/>
|
||||
</selector>
|
||||
@@ -25,6 +25,8 @@
|
||||
app:startPointDrawable="@null"
|
||||
app:resetDrawableMarginRight="34dp"
|
||||
app:resetDrawableMarginBottom="54dp"
|
||||
app:bottomPadding="200"
|
||||
app:topPadding="100"
|
||||
app:isClearArrived="true"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="match_parent"/>
|
||||
|
||||
@@ -57,58 +57,69 @@
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingTop="@dimen/dp_20" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_site_cancle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:layout_marginBottom="@dimen/dp_22"
|
||||
android:background="@drawable/charter_p_shape_cancle_line_site_change"
|
||||
android:gravity="center"
|
||||
android:paddingStart="@dimen/dp_56"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingEnd="@dimen/dp_56"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:text="取消"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_20"
|
||||
|
||||
<View
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/gl_site_cancle_submit_guide" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_site_submit"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginBottom="@dimen/dp_22"
|
||||
android:background="@drawable/charter_p_shape_submit_line_site_change"
|
||||
android:gravity="center"
|
||||
android:paddingStart="@dimen/dp_56"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingEnd="@dimen/dp_56"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:text="确认"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_20"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/gl_site_cancle_submit_guide" />
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/gl_site_cancle_submit_guide"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5" />
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/g_side_cancle_submit_group"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="tv_site_submit,tv_site_cancle" />
|
||||
android:background="@drawable/charter_p_selct_site_bottom_corner"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_90"/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_site_cancle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:layout_marginBottom="@dimen/dp_22"
|
||||
android:background="@drawable/charter_p_shape_cancle_line_site_change"
|
||||
android:gravity="center"
|
||||
android:paddingStart="@dimen/dp_56"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingEnd="@dimen/dp_56"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:text="取消"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_20"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintEnd_toStartOf="@+id/gl_site_cancle_submit_guide" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_site_submit"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:layout_marginBottom="@dimen/dp_22"
|
||||
android:background="@drawable/charter_p_shape_submit_line_site_change"
|
||||
android:gravity="center"
|
||||
android:paddingStart="@dimen/dp_56"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingEnd="@dimen/dp_56"
|
||||
android:paddingBottom="@dimen/dp_13"
|
||||
android:text="确认"
|
||||
android:textColor="@android:color/white"
|
||||
android:textSize="@dimen/dp_20"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toEndOf="@+id/gl_site_cancle_submit_guide" />
|
||||
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.Guideline
|
||||
android:id="@+id/gl_site_cancle_submit_guide"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
app:layout_constraintGuide_percent="0.5" />
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/g_side_cancle_submit_group"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="tv_site_submit,tv_site_cancle,tv_site_cancle,tv_site_submit" />
|
||||
|
||||
|
||||
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/g_lines_sites_data"
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
android:id="@+id/bizz_view"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_width="@dimen/dp_90"
|
||||
android:layout_height="match_parent"/>
|
||||
android:layout_height="@dimen/dp_47"/>
|
||||
<!--Wifi状态-->
|
||||
<com.mogo.eagle.core.function.hmi.ui.widget.WifiStateView
|
||||
android:id="@+id/wifiStateView"
|
||||
@@ -76,6 +76,7 @@
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/iv_biz_icon"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout 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="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatCheckBox
|
||||
android:id="@+id/tv_site_name"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_15"
|
||||
android:gravity="center"
|
||||
android:button="@null"
|
||||
android:background="@drawable/charter_p_selct_site_name_shape_selector"
|
||||
android:textColor="@color/charter_p_select_city_name_textcolor"
|
||||
android:textSize="22dp"
|
||||
android:paddingStart="@dimen/dp_16"
|
||||
android:paddingEnd="@dimen/dp_16"
|
||||
android:paddingTop="@dimen/dp_2"
|
||||
android:paddingBottom="@dimen/dp_2"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
tools:text="18" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -31,6 +31,7 @@
|
||||
<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_d7e5f5">#D7E5F5</color>
|
||||
<color name="bus_p_m1_662C2D31">#662C2D31</color>
|
||||
<color name="bus_p_m1_332C2D31">#332C2D31</color>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user