[2.13.0-arch-opt] merge

This commit is contained in:
zhongchao
2023-01-25 23:13:23 +08:00
parent 7000b84f68
commit 2265a5ffb8
32 changed files with 163 additions and 228 deletions

View File

@@ -180,20 +180,6 @@ class MoGoHmiFragment : MvpFragment<MoGoHmiContract.View?, HmiPresenter?>(),
private var busOperationStatus: IOchBusView? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
override fun vipIdentification(visible: Boolean) {
ThreadUtils.runOnUiThread {
if (visible) {
flVipIdentificationView?.visibility = View.VISIBLE
} else {
flVipIdentificationView?.visibility = View.GONE
}
}
}
override fun initViews() {
initViewShowWithConfig()
// 同步AppInfo Config信息

View File

@@ -3,49 +3,71 @@ package com.mogo.eagle.core.function.hmi.ui.widget
import android.content.Context
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
import androidx.constraintlayout.widget.ConstraintLayout
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.vip.IMoGoVipSetListener
import com.mogo.eagle.core.function.call.vip.CallVipSetListenerManager
import com.mogo.eagle.core.function.hmi.R
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import kotlinx.android.synthetic.main.view_vip_identification.view.*
import com.mogo.eagle.core.utilcode.util.ThreadUtils
/**
* VIP标识控件
*/
class VipIdentificationView @JvmOverloads constructor(
context: Context,
attrs: AttributeSet? = null,
defStyleAttr: Int = 0
) : ConstraintLayout(context, attrs, defStyleAttr) {
class VipIdentificationView : ConstraintLayout, IMoGoVipSetListener {
init {
companion object {
const val TAG = "VipIdentificationView"
}
constructor(context: Context, attributeSet: AttributeSet) : this(context, attributeSet, 0) {
}
constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super(
context,
attributeSet,
defStyleAttr
) {
init(attributeSet, defStyleAttr)
}
private var marginStart: Float = 0.0f
private var marginTop: Float = 0.0f
private fun init(attrs: AttributeSet, defStyleAttr: Int) {
LayoutInflater.from(context).inflate(R.layout.view_vip_identification, this, true)
val a = context.obtainStyledAttributes(
attrs,
R.styleable.VipIdentificationView,
defStyleAttr,
0
)
marginStart = a.getDimension(R.styleable.VipIdentificationView_marginStart, 0.0f)
marginTop = a.getDimension(R.styleable.VipIdentificationView_marginTop, 0.0f)
a.recycle()
}
override fun onAttachedToWindow() {
super.onAttachedToWindow()
val lp = this.layoutParams as LayoutParams
if (AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)
&& AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
lp.marginStart = resources.getDimension(R.dimen.module_vip_margin_left_bus_passenger).toInt()
lp.topMargin = resources.getDimension(R.dimen.module_vip_margin_top_passenger).toInt()
} else if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)
&& AppIdentityModeUtils.isPassenger(FunctionBuildConfig.appIdentityMode)) {
lp.marginStart = resources.getDimension(R.dimen.module_vip_margin_left_taxi_passenger).toInt()
lp.topMargin = resources.getDimension(R.dimen.module_vip_margin_top_passenger).toInt()
} else {
lp.marginStart = resources.getDimension(R.dimen.module_vip_margin_left).toInt()
lp.topMargin = resources.getDimension(R.dimen.module_vip_margin_top).toInt()
}
lp.marginStart = marginStart.toInt()
lp.topMargin = marginTop.toInt()
this.layoutParams = lp
invalidate()
CallVipSetListenerManager.addListener(TAG, this)
}
fun setVipIdentificationVisible(visible: Boolean) {
UiThreadHandler.post {
ivVipIdentification.visibility = visibility
override fun onVipSet(status: Boolean) {
ThreadUtils.runOnUiThread {
visibility = if (status) {
View.VISIBLE
} else {
View.GONE
}
}
}
override fun onDetachedFromWindow() {
super.onDetachedFromWindow()
CallVipSetListenerManager.removeListener(TAG)
}
}

View File

@@ -40,13 +40,13 @@
app:layout_constraintTop_toTopOf="parent" />
<!--Vip车辆标志-->
<com.mogo.eagle.core.function.hmi.ui.widget.VipIdentificationView
android:id="@+id/flVipIdentificationView"
android:layout_width="@dimen/module_vip_width"
android:layout_height="@dimen/module_vip_height"
android:visibility="gone"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<!-- <com.mogo.eagle.core.function.hmi.ui.widget.VipIdentificationView-->
<!-- android:id="@+id/flVipIdentificationView"-->
<!-- android:layout_width="@dimen/module_vip_width"-->
<!-- android:layout_height="@dimen/module_vip_height"-->
<!-- android:visibility="gone"-->
<!-- app:layout_constraintLeft_toLeftOf="parent"-->
<!-- app:layout_constraintTop_toTopOf="parent" />-->
<com.mogo.eagle.core.function.hmi.ui.takeover.TakeOverView
android:id="@+id/clTakeOverView"

View File

@@ -68,4 +68,9 @@
<item name="android:topDark">@android:color/transparent</item>
<item name="android:borderlessButtonStyle">@android:color/transparent</item>
</style>
<declare-styleable name="VipIdentificationView">
<attr name="marginStart" format="dimension" />
<attr name="marginTop" format="dimension" />
</declare-styleable>
</resources>