[音乐播放抽取]
This commit is contained in:
yangyakun
2024-03-12 15:19:00 +08:00
parent dcc674f2cc
commit fcba006453
69 changed files with 408 additions and 206 deletions

View File

@@ -57,9 +57,10 @@ dependencies {
implementation rootProject.ext.dependencies.amapnavi3dmap
implementation rootProject.ext.dependencies.amapsearch
implementation project(":OCH:common:common")
// implementation project(":OCH:common:common")
compileOnly project(":libraries:mogo-map")
implementation project(':core:mogo-core-res')
implementation project(':OCH:taxi:pcommon')
}

View File

@@ -21,10 +21,13 @@ import com.mogo.och.common.module.manager.xiaozhimanager.ZhiStateManager
import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.common.module.voice.VoiceNotice
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
import com.mogo.och.taxi.passenger.presenter.BaseTaxiPassengerPresenter
import com.mogo.och.taxi.passenger.ui.arrived.ArrivedView
import com.mogo.och.taxi.passenger.ui.bottom.BottomBar
import com.mogo.och.taxi.passenger.ui.checkstartautopilot.ChekAndStartAutopilotView
import com.mogo.och.taxi.passenger.ui.evaluate.EvaluateView
import com.mogo.och.taxi.passenger.ui.rightbar.RightBarView
import com.mogo.och.taxi.passenger.ui.statusview.StatusBarView
import io.reactivex.disposables.Disposable
import kotlinx.android.synthetic.main.taxi_p_base_fragment.*
@@ -74,31 +77,29 @@ class TaxiPassengerBaseFragment() :
}
private fun settingAndMusicListener() {
ck_setting.isChecked = false
ck_setting_only.isChecked = false
ck_music.isChecked = false
rbv_setting_music.setOrderIdCallback(object :RightBarView.RightBarCallback{
override fun setSettingAndMusicShow(settingShow: Boolean, musicShow: Boolean) {
clSettingView.visibility = if(settingShow) View.VISIBLE else View.GONE
mv_music_info.visibility = if(musicShow) View.VISIBLE else View.GONE
}
ck_setting.setOnCheckedChangeListener { _, isChecked ->
clSettingView.visibility = if(isChecked) View.VISIBLE else View.GONE
ck_setting_only.isChecked = isChecked
if(isChecked){
ck_music.isChecked = false
override fun setGo2CenterClick() {
when (bottom.getCurrentPage()) {
BottomBar.SelectView.PRECISIONMAP -> {
//切换到地图中间
mapBizView.getUI()?.let {
it.changeMapVisualAngle(it.getVrAngleDefaultMode(), null)
}
}
BottomBar.SelectView.OVERMAPVIEW -> {
overMapView.displayCustomOverView()
}
else -> {}
}
}
}
ck_setting_only.setOnCheckedChangeListener { _, isChecked ->
clSettingView.visibility = if(isChecked) View.VISIBLE else View.GONE
ck_setting.isChecked = isChecked
if(isChecked){
ck_music.isChecked = false
}
}
ck_music.setOnCheckedChangeListener { _, isChecked ->
mv_music_info.visibility = if(isChecked) View.VISIBLE else View.GONE
if(isChecked){
ck_setting.isChecked = false
ck_setting_only.isChecked = false
}
}
})
}
private fun initListener() {
@@ -118,8 +119,7 @@ class TaxiPassengerBaseFragment() :
romaPView.updateVisible(false)
romaDistanceView.visibility = View.GONE
}
con_third_group.visibility = View.VISIBLE
con_only_one_group.visibility = View.GONE
rbv_setting_music.setShowOnlySetting(0)
pcnActionView.visibility = View.VISIBLE
CallerHmiManager.showTrafficLightView()
infoVideoView.visibility = View.GONE
@@ -132,8 +132,7 @@ class TaxiPassengerBaseFragment() :
speedView.visibility = View.VISIBLE
romaPView.updateVisible(false)
romaDistanceView.visibility = View.GONE
con_third_group.visibility = View.VISIBLE
con_only_one_group.visibility = View.GONE
rbv_setting_music.setShowOnlySetting(0)
pcnActionView.visibility = View.VISIBLE
CallerHmiManager.showTrafficLightView()
infoVideoView.visibility = View.GONE
@@ -144,13 +143,9 @@ class TaxiPassengerBaseFragment() :
mapBizView.visibility = View.GONE
presenter?.setItineraryVisibility()
speedView.visibility = View.GONE
ck_setting.isChecked = false
ck_music.isChecked = false
ck_setting_only.isChecked = false
rbv_setting_music.setShowOnlySetting(1)
romaPView.updateVisible(false)
romaDistanceView.visibility = View.GONE
con_third_group.visibility = View.GONE
con_only_one_group.visibility = View.VISIBLE
pcnActionView.visibility = View.GONE
CallerHmiManager.hideTrafficLightView()
infoVideoView.visibility = View.VISIBLE
@@ -163,22 +158,6 @@ class TaxiPassengerBaseFragment() :
}
})
iv_center_location_bg.onClick {
when (bottom.getCurrentPage()) {
BottomBar.SelectView.PRECISIONMAP -> {
//切换到地图中间
mapBizView.getUI()?.let {
it.changeMapVisualAngle(it.getVrAngleDefaultMode(), null)
}
}
BottomBar.SelectView.OVERMAPVIEW -> {
overMapView.displayCustomOverView()
}
else -> {}
}
}
arrivedView.arrivedVisilityChangeListenr = object :ArrivedView.ArrivedVisilityChangeListenr{
override fun isShow(show: Boolean) {
CallerLogger.d(M_TAXI_P + TAG, "arrived ${show}")
@@ -201,6 +180,13 @@ class TaxiPassengerBaseFragment() :
}
}
}
evaluate.setOrderIdCallback(object :EvaluateView.EvaluateCallback{
override fun getOrderId(): String {
val orderNo = TaxiPassengerModel.currentOCHOrder?.orderNo
return orderNo?:""
}
})
}
override fun onResume() {

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -84,94 +84,12 @@
app:layout_constraintTop_toTopOf="parent"
app:roma_change_dis_color="true" />
<ImageView
android:id="@+id/iv_setting_music_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_300"
android:layout_marginEnd="@dimen/dp_40"
android:src="@drawable/taxi_p_setting_music_bg"
app:barrierAllowsGoneWidgets="true"
app:layout_constraintBottom_toBottomOf="parent"
<com.mogo.och.taxi.passenger.ui.rightbar.RightBarView
android:id="@+id/rbv_setting_music"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/ck_setting"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_setting_selector"
android:button="@null"
app:layout_constraintBottom_toTopOf="@+id/ck_music"
app:layout_constraintStart_toStartOf="@+id/iv_setting_music_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_music_bg"
app:layout_constraintTop_toTopOf="@+id/iv_setting_music_bg" />
<CheckBox
android:id="@+id/ck_music"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_music_selector"
android:button="@null"
app:layout_constraintTop_toBottomOf="@+id/ck_setting"
app:layout_constraintStart_toStartOf="@+id/iv_setting_music_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_music_bg"
app:layout_constraintBottom_toBottomOf="@+id/iv_setting_music_bg" />
<ImageView
android:id="@+id/iv_center_location_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_120"
android:layout_marginTop="@dimen/dp_64"
android:layout_marginEnd="@dimen/dp_40"
android:src="@drawable/taxi_p_reset_location_bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/iv_setting_music_bg" />
<ImageView
android:id="@+id/iv_center_location"
app:layout_constraintTop_toTopOf="@+id/iv_center_location_bg"
app:layout_constraintBottom_toBottomOf="@+id/iv_center_location_bg"
app:layout_constraintStart_toStartOf="@+id/iv_center_location_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_center_location_bg"
android:src="@drawable/taxi_p_center_location_selector"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"/>
<androidx.constraintlayout.widget.Group
android:id="@+id/con_third_group"
android:visibility="visible"
app:constraint_referenced_ids="iv_setting_music_bg,ck_setting,ck_music,iv_center_location_bg,iv_center_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<androidx.constraintlayout.widget.Group
android:id="@+id/con_only_one_group"
android:visibility="gone"
app:constraint_referenced_ids="iv_setting_only_bg,ck_setting_only"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageView
android:id="@+id/iv_setting_only_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_120"
android:layout_marginEnd="@dimen/dp_40"
android:src="@drawable/taxi_p_reset_location_bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<CheckBox
android:id="@+id/ck_setting_only"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_setting_selector"
android:button="@null"
app:layout_constraintBottom_toBottomOf="@+id/iv_setting_only_bg"
app:layout_constraintStart_toStartOf="@+id/iv_setting_only_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_only_bg"
app:layout_constraintTop_toTopOf="@+id/iv_setting_only_bg" />
android:layout_height="match_parent"/>
<com.mogo.och.taxi.passenger.ui.music.MusicView
android:id="@+id/mv_music_info"
@@ -184,7 +102,7 @@
android:layout_width="@dimen/dp_746"
android:layout_height="@dimen/dp_916"/>
<com.mogo.och.taxi.passenger.ui.systemsetting.TaxiPSettingView
<com.mogo.och.taxi.passenger.ui.setting.TaxiPSettingView
android:id="@+id/clSettingView"
android:layout_width="@dimen/dp_858"
android:layout_height="@dimen/dp_537"
@@ -266,6 +184,7 @@
app:layout_constraintEnd_toEndOf="parent" />
<com.mogo.och.taxi.passenger.ui.evaluate.EvaluateView
android:id="@+id/evaluate"
app:layout_constraintBottom_toTopOf="@+id/pmbb_info"
app:layout_constraintEnd_toEndOf="@+id/aciv_xiaozhi_normal"
android:layout_marginEnd="@dimen/dp_50"

View File

@@ -28,26 +28,22 @@
<color name="taxi_p_C8F3F4">#C8F3F4</color>
<color name="taxi_p_282F62">#282F62</color>
<color name="taxi_p_242C65">#242C65</color>
<color name="taxi_p_374968">#374968</color>
<color name="taxi_p_303C52">#303C52</color>
<color name="taxi_p_2CBFFC">#2CBFFC</color>
<color name="taxi_p_1060ff">#1060ff</color>
<color name="taxi_p_425877">#425877</color>
<color name="taxi_p_96a5c2">#96a5c2</color>
<color name="taxi_p_76D7FF">#76D7FF</color>
<color name="taxi_p_255BAA">#255BAA</color>
<color name="taxi_p_80F8FF">#80F8FF</color>
<color name="taxi_p_A0B3DA">#A0B3DA</color>
<color name="taxi_p_005D6A8C">#005D6A8C</color>
<color name="taxi_p_5D6A8C">#5D6A8C</color>
<color name="taxi_p_576887">#576887</color>
<color name="taxi_p_995D6A8C">#995D6A8C</color>
<color name="taxi_p_B37E90BF">#B37E90BF</color>
<color name="taxi_p_488ED0">#44488ED0</color>
<color name="taxi_p_598CFF">#598CFF</color>
<color name="taxi_p_253A5A">#253A5A</color>
<color name="taxi_p_4DFFFFFF">#4DFFFFFF</color>
<color name="taxi_p_131415">#131415</color>
<color name="taxi_p_464646">#464646</color>

View File

@@ -17,8 +17,7 @@
<string name="taxi_p_surplustime">剩余(分)</string>
<string name="taxi_p_setting_light">亮度</string>
<string name="taxi_p_setting_sound">音量</string>
</resources>

1
OCH/taxi/pcommon/.gitignore vendored Normal file
View File

@@ -0,0 +1 @@
/build

View File

@@ -0,0 +1,50 @@
plugins {
id 'com.android.library'
id 'org.jetbrains.kotlin.android'
id 'kotlin-android-extensions'
}
android {
compileSdkVersion rootProject.ext.android.compileSdkVersion
defaultConfig {
minSdkVersion rootProject.ext.android.minSdkVersion
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
lintOptions {
abortOnError false
}
kotlinOptions {
jvmTarget = '1.8'
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation rootProject.ext.dependencies.kotlinstdlib
implementation rootProject.ext.dependencies.androidxccorektx
implementation rootProject.ext.dependencies.androidxappcompat
implementation rootProject.ext.dependencies.material
implementation rootProject.ext.dependencies.rxandroid
implementation rootProject.ext.dependencies.arouter
api project(":OCH:common:common")
if (Boolean.valueOf(USE_MAVEN_PACKAGE)) {
api rootProject.ext.dependencies.mogoutils
}else {
api project(":core:mogo-core-utils")
}
}

View File

21
OCH/taxi/pcommon/proguard-rules.pro vendored Normal file
View File

@@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mogo.och.taxi.passenger.common">
</manifest>

View File

@@ -2,12 +2,9 @@ package com.mogo.och.taxi.passenger.ui.evaluate
import android.animation.Animator
import android.animation.AnimatorListenerAdapter
import android.animation.ObjectAnimator
import android.animation.ValueAnimator
import android.content.Context
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
import androidx.constraintlayout.widget.ConstraintLayout
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.findViewTreeViewModelStoreOwner
@@ -16,9 +13,7 @@ import com.mogo.eagle.core.utilcode.kotlin.onClick
import com.mogo.och.common.module.manager.xiaozhimanager.ZhiViewmanager
import com.mogo.och.common.module.utils.RxUtils
import com.mogo.och.common.module.voice.VoiceNotice
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.ui.arrived.ArrivedViewModel
import com.mogo.och.taxi.passenger.ui.orderinfo.OrderInfoViewModel
import com.mogo.och.taxi.passenger.common.R
import kotlinx.android.synthetic.main.taxi_p_evaluate.view.iv_close
import kotlinx.android.synthetic.main.taxi_p_evaluate.view.iv_evaluate_great
import kotlinx.android.synthetic.main.taxi_p_evaluate.view.iv_evaluate_low
@@ -39,7 +34,7 @@ class EvaluateView : ConstraintLayout, EvaluateViewModel.EvaluateCallback {
private var isFirat = true
private lateinit var viewModel: EvaluateViewModel
private var viewModel: EvaluateViewModel?=null
private fun initView() {
LayoutInflater.from(context).inflate(R.layout.taxi_p_evaluate, this, true)
@@ -100,7 +95,7 @@ class EvaluateView : ConstraintLayout, EvaluateViewModel.EvaluateCallback {
override fun onAttachedToWindow() {
super.onAttachedToWindow()
val viewModel = findViewTreeViewModelStoreOwner()?.let {
viewModel = findViewTreeViewModelStoreOwner()?.let {
ViewModelProvider(it).get(EvaluateViewModel::class.java)
}
viewModel?.setViewCallback(this)
@@ -124,5 +119,13 @@ class EvaluateView : ConstraintLayout, EvaluateViewModel.EvaluateCallback {
}
}
fun setOrderIdCallback(evaluateCallback: EvaluateCallback) {
viewModel?.setOrderIdCallback(evaluateCallback)
}
interface EvaluateCallback {
fun getOrderId():String
}
}

View File

@@ -5,7 +5,6 @@ import com.mogo.commons.storage.SharedPrefsMgr
import com.mogo.eagle.core.utilcode.util.StringUtils
import com.mogo.och.common.module.manager.distancemamager.IDistanceListener
import com.mogo.och.common.module.manager.distancemamager.TrajectoryAndDistanceManager
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
class EvaluateViewModel : ViewModel(), IDistanceListener {
@@ -15,6 +14,8 @@ class EvaluateViewModel : ViewModel(), IDistanceListener {
private var viewCallback: EvaluateCallback? = null
private var evaluateCallback: EvaluateView.EvaluateCallback?=null
init {
TrajectoryAndDistanceManager.addDistanceListener(TAG, this)
}
@@ -22,11 +23,11 @@ class EvaluateViewModel : ViewModel(), IDistanceListener {
override fun distanceCallback(distance: Float) {
super.distanceCallback(distance)
if(distance<=500) {
TaxiPassengerModel.currentOCHOrder?.let {
evaluateCallback?.getOrderId()?.let{
val string = SharedPrefsMgr.getInstance().getString(orderShowEvaluate)
if (StringUtils.isEmpty(string) || !string.equals(it.orderNo)) {
if (StringUtils.isEmpty(string) || !string.equals(it)) {
this.viewCallback?.showEvaluate(true)
SharedPrefsMgr.getInstance().putString(orderShowEvaluate, it.orderNo)
SharedPrefsMgr.getInstance().putString(orderShowEvaluate, it)
}
}
}
@@ -42,6 +43,10 @@ class EvaluateViewModel : ViewModel(), IDistanceListener {
this.viewCallback = null
}
fun setOrderIdCallback(evaluateCallback: EvaluateView.EvaluateCallback) {
this.evaluateCallback = evaluateCallback
}
interface EvaluateCallback {
fun showEvaluate(show: Boolean)

View File

@@ -8,7 +8,7 @@ import androidx.constraintlayout.widget.ConstraintLayout
import androidx.lifecycle.ViewModelProvider
import androidx.lifecycle.findViewTreeViewModelStoreOwner
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.common.R
import com.mogo.och.taxi.passenger.ui.music.list.MusicListView
import kotlinx.android.synthetic.main.taxi_p_music.view.iv_toggle_list_playing
import kotlinx.android.synthetic.main.taxi_p_music.view.mlv_list

View File

@@ -1,20 +1,18 @@
package com.mogo.och.taxi.passenger.ui.music
import androidx.lifecycle.ViewModel
import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
class MusicViewModel: ViewModel(), IOCHTaxiPassengerOrderStatusCallback {
class MusicViewModel: ViewModel() {
private val TAG = MusicViewModel::class.java.simpleName
private var viewCallback:IMusicViewCallback?=null
private var viewCallback: IMusicViewCallback?=null
init {
}
fun setDistanceCallback(viewCallback:IMusicViewCallback){
fun setDistanceCallback(viewCallback: IMusicViewCallback){
this.viewCallback = viewCallback
}

View File

@@ -12,8 +12,7 @@ import androidx.core.content.ContextCompat
import androidx.recyclerview.widget.RecyclerView
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.common.module.manager.auditionmanager.PlayState
import com.mogo.och.taxi.passenger.R
import me.jessyan.autosize.utils.AutoSizeUtils
import com.mogo.och.taxi.passenger.common.R
/**
* Created by adityagohad on 06/06/17.
@@ -27,9 +26,9 @@ class MusicListItemAdapter(
val gradientDrawable = GradientDrawable().also {
it.shape = GradientDrawable.RECTANGLE
val firstColor = ContextCompat.getColor(context, android.R.color.transparent)
val setondColor = ContextCompat.getColor(context, R.color.taxi_p_4DFFFFFF)
val thirdColor = ContextCompat.getColor(context, R.color.taxi_p_4DFFFFFF)
val fourceColor = ContextCompat.getColor(context, R.color.taxi_p_4DFFFFFF)
val setondColor = ContextCompat.getColor(context, R.color.taxi_cp_4DFFFFFF)
val thirdColor = ContextCompat.getColor(context, R.color.taxi_cp_4DFFFFFF)
val fourceColor = ContextCompat.getColor(context, R.color.taxi_cp_4DFFFFFF)
val fifthColor = ContextCompat.getColor(context, android.R.color.transparent)
it.orientation = GradientDrawable.Orientation.LEFT_RIGHT

View File

@@ -9,9 +9,8 @@ import androidx.lifecycle.findViewTreeViewModelStoreOwner
import androidx.recyclerview.widget.LinearLayoutManager
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.common.R
import kotlinx.android.synthetic.main.taxi_p_music_list.view.rv_music_list
import me.jessyan.autosize.utils.AutoSizeUtils
class MusicListView : ConstraintLayout, MusicListViewModel.IMusicListViewCaLillback,
MusicListItemAdapter.ClickListener {

View File

@@ -5,9 +5,8 @@ import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
class MusicListViewModel : ViewModel(), IOCHTaxiPassengerOrderStatusCallback,
class MusicListViewModel : ViewModel(),
AuditionManager.MusicDataChangeListener {
private val TAG = MusicListViewModel::class.java.simpleName

View File

@@ -18,7 +18,7 @@ import com.mogo.eagle.core.utilcode.util.TimeTransformUtils
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.common.module.manager.auditionmanager.PlayState
import com.mogo.och.common.module.utils.DateTimeUtil
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.common.R
import kotlinx.android.synthetic.main.taxi_p_music_playing.view.iv_music_cover
import kotlinx.android.synthetic.main.taxi_p_music_playing.view.iv_music_cover_bg
import kotlinx.android.synthetic.main.taxi_p_music_playing.view.iv_show_next

View File

@@ -2,11 +2,8 @@ package com.mogo.och.taxi.passenger.ui.music.playing
import androidx.lifecycle.ViewModel
import com.elegant.utils.UiThreadHandler
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.och.common.module.manager.auditionmanager.AuditionManager
import com.mogo.och.common.module.manager.auditionmanager.MusicData
import com.mogo.och.taxi.passenger.callback.IOCHTaxiPassengerOrderStatusCallback
import com.mogo.och.taxi.passenger.model.TaxiPassengerModel
class MusicPlayingViewModel : ViewModel(), AuditionManager.MusicDataChangeListener {

View File

@@ -0,0 +1,106 @@
package com.mogo.och.taxi.passenger.ui.rightbar
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.utilcode.kotlin.onClick
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
import com.mogo.och.taxi.passenger.common.R
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.ck_music
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.ck_setting
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.ck_setting_only
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.con_only_one_group
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.con_third_group
import kotlinx.android.synthetic.main.taxi_p_rightbar.view.iv_center_location
class RightBarView : ConstraintLayout {
private val TAG = "RightBarView"
constructor(context: Context) : super(context)
constructor(context: Context, attributeSet: AttributeSet) : super(context, attributeSet)
constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int) : super(context, attributeSet, defStyleAttr)
constructor(context: Context, attributeSet: AttributeSet, defStyleAttr: Int, defStyleRes: Int) : super(context, attributeSet, defStyleAttr, defStyleRes)
private var rightBarCallback:RightBarCallback?=null
private fun initView() {
LayoutInflater.from(context).inflate(R.layout.taxi_p_rightbar, this, true)
ck_setting.isChecked = false
ck_setting_only.isChecked = false
ck_music.isChecked = false
ck_setting.setOnCheckedChangeListener { _, isChecked ->
CallerLogger.d(TAG,"ck_setting=${isChecked}")
rightBarCallback?.setSettingAndMusicShow(ck_setting.isChecked,ck_music.isChecked)
ck_setting_only.isChecked = isChecked
if(isChecked){
ck_music.isChecked = false
}
}
ck_setting_only.setOnCheckedChangeListener { _, isChecked ->
CallerLogger.d(TAG,"ck_setting_only=${isChecked}")
ck_setting.isChecked = isChecked
rightBarCallback?.setSettingAndMusicShow(ck_setting.isChecked,ck_music.isChecked)
if(isChecked){
ck_music.isChecked = false
}
}
ck_music.setOnCheckedChangeListener { _, isChecked ->
CallerLogger.d(TAG,"ck_music=${isChecked}")
rightBarCallback?.setSettingAndMusicShow(ck_setting.isChecked,ck_music.isChecked)
if(isChecked){
ck_setting.isChecked = false
ck_setting_only.isChecked = false
}
}
iv_center_location.onClick {
this.rightBarCallback?.setGo2CenterClick()
}
}
override fun onVisibilityAggregated(isVisible: Boolean) {
super.onVisibilityAggregated(isVisible)
}
override fun onAttachedToWindow() {
super.onAttachedToWindow()
}
init {
try {
initView()
} catch (e: Exception) {
e.printStackTrace()
}
}
fun setOrderIdCallback(rightBarCallback: RightBarCallback) {
this.rightBarCallback = rightBarCallback
}
fun setShowOnlySetting(i: Int) {
if(i==0){
con_third_group.visibility = View.VISIBLE
con_only_one_group.visibility = View.GONE
}else if (i==1){
con_third_group.visibility = View.GONE
con_only_one_group.visibility = View.VISIBLE
ck_music.isChecked = false
}
}
interface RightBarCallback {
fun setSettingAndMusicShow(settingShow:Boolean,musicShow:Boolean)
fun setGo2CenterClick()
}
}

View File

@@ -1,4 +1,4 @@
package com.mogo.och.taxi.passenger.ui.systemsetting
package com.mogo.och.taxi.passenger.ui.setting
import android.annotation.SuppressLint
import android.content.Context
@@ -25,7 +25,7 @@ import com.mogo.eagle.core.function.call.setting.CallerRequestActivityHandleMana
import com.mogo.eagle.core.utilcode.util.BrightnessUtils
import com.mogo.eagle.core.utilcode.util.ThreadUtils
import com.mogo.och.common.module.wigets.MineGradientDrawable
import com.mogo.och.taxi.passenger.R
import com.mogo.och.taxi.passenger.common.R
import kotlinx.android.synthetic.main.taxi_p_setting_view.view.*
import me.jessyan.autosize.utils.AutoSizeUtils
@@ -127,9 +127,9 @@ class TaxiPSettingView @JvmOverloads constructor(
private fun getDrawable(): Drawable {
val dp2px = AutoSizeUtils.dp2px(context, 26f)//进度条高度
val color2CBFFC = ContextCompat.getColor(context, R.color.taxi_p_2CBFFC)
val color1060FF = ContextCompat.getColor(context, R.color.taxi_p_1060ff)
val color96A5C2 = ContextCompat.getColor(context, R.color.taxi_p_96a5c2)
val color2CBFFC = ContextCompat.getColor(context, R.color.taxi_cp_2CBFFC)
val color1060FF = ContextCompat.getColor(context, R.color.taxi_cp_1060ff)
val color96A5C2 = ContextCompat.getColor(context, R.color.taxi_cp_96a5c2)
val temp03 = MineGradientDrawable(color2CBFFC, color1060FF, dp2px)
val clipDrawable3 = ClipDrawable(temp03, Gravity.START, ClipDrawable.HORIZONTAL)
val temp01 = MineGradientDrawable(color96A5C2, color96A5C2, dp2px)

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 3.5 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 2.5 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View File

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View File

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 469 KiB

After

Width:  |  Height:  |  Size: 469 KiB

View File

@@ -2,5 +2,5 @@
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="@dimen/dp_16_5"/>
<stroke android:width="@dimen/dp_1" android:color="@color/taxi_p_425877"/>
<stroke android:width="@dimen/dp_1" android:color="@color/taxi_cp_425877"/>
</shape>

View File

@@ -4,14 +4,14 @@
<item android:id="@android:id/background">
<shape>
<corners android:radius="5dp"/>
<solid android:color="@color/taxi_p_488ED0" />
<solid android:color="@color/taxi_cp_488ED0" />
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape>
<corners android:radius="5dp"/>
<solid android:color="@color/taxi_p_488ED0" />
<solid android:color="@color/taxi_cp_488ED0" />
</shape>
</clip>
</item>
@@ -19,7 +19,7 @@
<scale android:scaleWidth="100%">
<shape android:shape="rectangle">
<corners android:radius="5dp"/>
<solid android:color="@color/taxi_p_598CFF" />
<solid android:color="@color/taxi_cp_598CFF" />
</shape>
</scale>
</item>

View File

@@ -24,7 +24,7 @@
android:layout_marginTop="@dimen/dp_51"
android:layout_marginEnd="@dimen/dp_51"
android:text="行程即将结束,小智很想知道你的体验如何呢?"
android:textColor="@color/taxi_p_131415"
android:textColor="@color/taxi_cp_131415"
android:textSize="@dimen/dp_32"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -38,7 +38,7 @@
android:layout_marginStart="@dimen/dp_105"
android:layout_marginBottom="@dimen/dp_40"
android:text="新奇有趣"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
android:textSize="@dimen/dp_26"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
@@ -50,7 +50,7 @@
android:layout_marginEnd="@dimen/dp_99"
android:layout_marginBottom="@dimen/dp_40"
android:text="有待提升"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
android:textSize="@dimen/dp_26"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent" />

View File

@@ -9,7 +9,7 @@
<TextView
android:id="@+id/tv_music_title"
android:text="音乐列表"
android:textColor="@color/taxi_p_253A5A"
android:textColor="@color/taxi_cp_253A5A"
android:textSize="@dimen/dp_32"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"

View File

@@ -11,7 +11,7 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
android:layout_marginStart="@dimen/dp_55"
android:text="音乐名称"
android:textSize="@dimen/dp_32"
@@ -33,7 +33,7 @@
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:textColor="@color/taxi_p_425877"
android:textColor="@color/taxi_cp_425877"
android:textSize="@dimen/dp_24"
android:background="@drawable/taxi_p_music_list_tag_bg"
android:paddingStart="@dimen/dp_10"

View File

@@ -41,7 +41,7 @@
android:layout_marginTop="@dimen/dp_m_17"
android:textSize="@dimen/dp_38"
tools:text="Current"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
@@ -52,7 +52,7 @@
app:layout_constraintEnd_toStartOf="@+id/tv_tag"
app:layout_constraintTop_toBottomOf="@+id/tv_music_name"
android:textSize="@dimen/dp_32"
android:textColor="@color/taxi_p_576887"
android:textColor="@color/taxi_cp_576887"
tools:text="Kokia"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
@@ -62,7 +62,7 @@
app:layout_constraintEnd_toEndOf="parent"
android:textSize="@dimen/dp_16"
app:layout_constraintBaseline_toBaselineOf="@+id/tv_author"
android:textColor="@color/taxi_p_576887"
android:textColor="@color/taxi_cp_576887"
tools:text="轻柔"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
@@ -91,7 +91,7 @@
app:layout_constraintTop_toTopOf="@+id/sb_musuc_progess"
app:layout_constraintBottom_toBottomOf="@+id/sb_musuc_progess"
app:layout_constraintEnd_toStartOf="@+id/sb_musuc_progess"
android:textColor="@color/taxi_p_576887"
android:textColor="@color/taxi_cp_576887"
android:layout_marginEnd="@dimen/dp_13"
tools:text="02:34"
android:layout_width="wrap_content"
@@ -104,7 +104,7 @@
app:layout_constraintTop_toTopOf="@+id/sb_musuc_progess"
app:layout_constraintBottom_toBottomOf="@+id/sb_musuc_progess"
app:layout_constraintStart_toEndOf="@+id/sb_musuc_progess"
android:textColor="@color/taxi_p_576887"
android:textColor="@color/taxi_cp_576887"
android:layout_marginEnd="@dimen/dp_13"
android:layout_marginStart="@dimen/dp_13"
tools:text="05:56"

View File

@@ -0,0 +1,95 @@
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="@dimen/dp_120"
android:layout_height="wrap_content"
tools:parentTag="androidx.constraintlayout.widget.ConstraintLayout">
<ImageView
android:id="@+id/iv_setting_music_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_300"
android:src="@drawable/taxi_p_setting_music_bg"
app:barrierAllowsGoneWidgets="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/ck_setting"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_setting_selector"
android:button="@null"
app:layout_constraintBottom_toTopOf="@+id/ck_music"
app:layout_constraintStart_toStartOf="@+id/iv_setting_music_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_music_bg"
app:layout_constraintTop_toTopOf="@+id/iv_setting_music_bg" />
<CheckBox
android:id="@+id/ck_music"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_music_selector"
android:button="@null"
app:layout_constraintTop_toBottomOf="@+id/ck_setting"
app:layout_constraintStart_toStartOf="@+id/iv_setting_music_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_music_bg"
app:layout_constraintBottom_toBottomOf="@+id/iv_setting_music_bg" />
<ImageView
android:id="@+id/iv_center_location_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_120"
android:layout_marginTop="@dimen/dp_64"
android:src="@drawable/taxi_p_reset_location_bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/iv_setting_music_bg" />
<ImageView
android:id="@+id/iv_center_location"
app:layout_constraintTop_toTopOf="@+id/iv_center_location_bg"
app:layout_constraintBottom_toBottomOf="@+id/iv_center_location_bg"
app:layout_constraintStart_toStartOf="@+id/iv_center_location_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_center_location_bg"
android:src="@drawable/taxi_p_center_location_selector"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"/>
<androidx.constraintlayout.widget.Group
android:id="@+id/con_third_group"
android:visibility="visible"
app:constraint_referenced_ids="iv_setting_music_bg,ck_setting,ck_music,iv_center_location_bg,iv_center_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<androidx.constraintlayout.widget.Group
android:id="@+id/con_only_one_group"
android:visibility="gone"
app:constraint_referenced_ids="iv_setting_only_bg,ck_setting_only"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageView
android:id="@+id/iv_setting_only_bg"
android:layout_width="@dimen/dp_120"
android:layout_height="@dimen/dp_120"
android:src="@drawable/taxi_p_reset_location_bg"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"/>
<CheckBox
android:id="@+id/ck_setting_only"
android:layout_width="@dimen/dp_76"
android:layout_height="@dimen/dp_76"
android:background="@drawable/taxi_p_setting_selector"
android:button="@null"
app:layout_constraintBottom_toBottomOf="@+id/iv_setting_only_bg"
app:layout_constraintStart_toStartOf="@+id/iv_setting_only_bg"
app:layout_constraintEnd_toEndOf="@+id/iv_setting_only_bg"
app:layout_constraintTop_toTopOf="@+id/iv_setting_only_bg" />
</merge>

View File

@@ -12,8 +12,8 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_95"
android:layout_marginTop="@dimen/dp_98"
android:text="@string/taxi_p_setting_light"
android:textColor="@color/taxi_p_374968"
android:text="@string/taxi_cp_setting_light"
android:textColor="@color/taxi_cp_374968"
android:textSize="@dimen/dp_36"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -57,7 +57,7 @@
android:layout_marginTop="@dimen/dp_154"
android:layout_marginRight="@dimen/dp_113"
android:gravity="right"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
android:textSize="@dimen/dp_56"
android:textStyle="bold"
app:layout_constraintRight_toRightOf="parent"
@@ -69,8 +69,8 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_95"
android:layout_marginTop="@dimen/dp_129"
android:text="@string/taxi_p_setting_sound"
android:textColor="@color/taxi_p_374968"
android:text="@string/taxi_cp_setting_sound"
android:textColor="@color/taxi_cp_374968"
android:textSize="@dimen/dp_36"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tvSettingLight" />
@@ -116,7 +116,7 @@
android:gravity="right"
android:textSize="@dimen/dp_56"
android:textStyle="bold"
android:textColor="@color/taxi_p_303C52"
android:textColor="@color/taxi_cp_303C52"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="taxi_cp_253A5A">#253A5A</color>
<color name="taxi_cp_303C52">#303C52</color>
<color name="taxi_cp_425877">#425877</color>
<color name="taxi_cp_576887">#576887</color>
<color name="taxi_cp_4DFFFFFF">#4DFFFFFF</color>
<color name="taxi_cp_488ED0">#44488ED0</color>
<color name="taxi_cp_598CFF">#598CFF</color>
<color name="taxi_cp_2CBFFC">#2CBFFC</color>
<color name="taxi_cp_1060ff">#1060ff</color>
<color name="taxi_cp_96a5c2">#96a5c2</color>
<color name="taxi_cp_374968">#374968</color>
<color name="taxi_cp_131415">#131415</color>
</resources>

View File

@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="taxi_cp_setting_light">亮度</string>
<string name="taxi_cp_setting_sound">音量</string>
</resources>

View File

@@ -63,6 +63,7 @@ include ':OCH:bus:passenger'
include ':OCH:taxi:driver'
include ':OCH:taxi:passenger'
include ':OCH:taxi:pcommon'
include ':OCH:taxi:unmanned-driver'
include ':OCH:taxi:unmanned-passenger'