[6.7.0]
[fea] [打点弹窗UI]
This commit is contained in:
@@ -0,0 +1,86 @@
|
||||
package com.mogo.och.common.module.wigets.dialog
|
||||
|
||||
import android.content.Context
|
||||
import android.view.View
|
||||
import androidx.appcompat.widget.AppCompatImageView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.R
|
||||
import com.mogo.och.common.module.utils.RxUtils
|
||||
|
||||
/**
|
||||
* loading
|
||||
*/
|
||||
class CommonFeedbackDialog : BaseFloatDialog, LifecycleObserver {
|
||||
|
||||
private var status: Status = Status.success
|
||||
|
||||
private val ivFeedbackStatus:AppCompatImageView by lazy { findViewById(R.id.iv_feedback_status) }
|
||||
private val tvFeedbackStatusDescribe:AppCompatTextView by lazy { findViewById(R.id.tv_feedback_status_describe) }
|
||||
|
||||
private var listener:Listener?=null
|
||||
|
||||
private var mRunnable:Runnable= Runnable {
|
||||
ToastUtils.showLong("超时未响应,请求失败")
|
||||
}
|
||||
|
||||
constructor(builder: Builder, context: Context) : super(context) {
|
||||
tvFeedbackStatusDescribe.text = builder.titleStr
|
||||
status = builder.statusEnum
|
||||
listener = builder.listener
|
||||
when (status) {
|
||||
Status.success -> {
|
||||
ivFeedbackStatus.setImageResource(R.drawable.common_feedback_success)
|
||||
}
|
||||
Status.fail -> {
|
||||
ivFeedbackStatus.setImageResource(R.drawable.common_feedback_fail)
|
||||
}
|
||||
}
|
||||
RxUtils.createSubscribe(1_000) {
|
||||
hide()
|
||||
this.listener?.cancel()
|
||||
}
|
||||
}
|
||||
|
||||
init {
|
||||
setContentView(R.layout.common_feedback_dialog)
|
||||
setCanceledOnTouchOutside(false)
|
||||
}
|
||||
|
||||
|
||||
class Builder{
|
||||
var statusEnum: Status = Status.success
|
||||
var titleStr:String = ""
|
||||
var listener:Listener?=null
|
||||
|
||||
fun title(title: String) : Builder{
|
||||
this.titleStr = title
|
||||
return this
|
||||
}
|
||||
|
||||
fun listener(listener: Listener) : Builder{
|
||||
this.listener = listener
|
||||
return this
|
||||
}
|
||||
|
||||
fun build(context: Context): CommonFeedbackDialog {
|
||||
return CommonFeedbackDialog(this,context)
|
||||
}
|
||||
|
||||
fun status(ask: Status): Builder {
|
||||
this.statusEnum = ask
|
||||
return this
|
||||
}
|
||||
}
|
||||
|
||||
enum class Status{
|
||||
success,fail,loading
|
||||
}
|
||||
|
||||
interface Listener{
|
||||
fun cancel()
|
||||
}
|
||||
|
||||
}
|
||||
@@ -209,7 +209,7 @@ class AdvanceVideoView @JvmOverloads constructor(
|
||||
Logger.d(MediaLoopPlayView.TAG, "startPlay")
|
||||
gsyVideoPlayerOptionBuilder = GSYVideoOptionBuilder()
|
||||
gsyVideoPlayerOptionBuilder
|
||||
?.setUrl(localVideoPath) // "/data/user/0/com.mogo.launcher.f/files/video/"
|
||||
?.setUrl(localVideoPath) // "/sdcard/mogo/media"
|
||||
?.setPlayTag(MediaFileCacheManager.getCacheFileName(videoUrl))
|
||||
?.setCacheWithPlay(false)
|
||||
?.setThumbPlay(false)
|
||||
|
||||
BIN
OCH/common/common/src/main/res/drawable-nodpi/common_feedback_fail.png
Executable file
BIN
OCH/common/common/src/main/res/drawable-nodpi/common_feedback_fail.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 6.0 KiB |
BIN
OCH/common/common/src/main/res/drawable-nodpi/common_feedback_success.png
Executable file
BIN
OCH/common/common/src/main/res/drawable-nodpi/common_feedback_success.png
Executable file
Binary file not shown.
|
After Width: | Height: | Size: 6.2 KiB |
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="@dimen/dp_439"
|
||||
android:layout_height="@dimen/dp_333"
|
||||
android:orientation="vertical"
|
||||
android:gravity="center"
|
||||
android:layout_gravity="center">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/iv_feedback_status"
|
||||
android:layout_width="@dimen/dp_140"
|
||||
android:layout_height="@dimen/dp_140"
|
||||
android:src="@drawable/common_feedback_success" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tv_feedback_status_describe"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="打点成功"
|
||||
android:textSize="@dimen/dp_38"
|
||||
android:textColor="@color/white"
|
||||
android:layout_marginTop="@dimen/dp_28"/>
|
||||
</androidx.appcompat.widget.LinearLayoutCompat>
|
||||
@@ -12,6 +12,7 @@ import com.mogo.och.weaknet.ui.switchline.SwitchLineAdapter.SwitchLineViewHolder
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.repository.db.bean.LineDataBean
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import me.jessyan.autosize.AutoSizeCompat
|
||||
|
||||
/**
|
||||
* 路线列表adapter
|
||||
@@ -50,6 +51,7 @@ class SwitchLineAdapter(
|
||||
|
||||
override fun onBindViewHolder(holder: SwitchLineViewHolder, position: Int) {
|
||||
val currentPosition = holder.bindingAdapterPosition
|
||||
AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources)
|
||||
val line = mData[currentPosition]
|
||||
|
||||
holder.lineName.text = line.lineName
|
||||
|
||||
@@ -13,6 +13,7 @@ import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
import com.mogo.och.weaknet.ui.switchtask.SwitchLineTaskAdapter.SwitchLineTaskViewHolder
|
||||
import com.mogo.och.shuttle.weaknet.R
|
||||
import com.mogo.och.weaknet.repository.db.bean.TaskDataBean
|
||||
import me.jessyan.autosize.AutoSizeCompat
|
||||
|
||||
/**
|
||||
* 路线列表adapter
|
||||
@@ -49,6 +50,7 @@ class SwitchLineTaskAdapter(
|
||||
|
||||
override fun onBindViewHolder(holder: SwitchLineTaskViewHolder, position: Int) {
|
||||
val currentPosition = holder.bindingAdapterPosition
|
||||
AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources)
|
||||
val task = mData[currentPosition]
|
||||
val taskStartTime = TimeUtils.millis2String(task.taskStartTime?:System.currentTimeMillis(), "HH:mm")
|
||||
holder.taskTime.text = taskStartTime
|
||||
|
||||
@@ -6,9 +6,7 @@ import android.view.LayoutInflater
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.lifecycle.findViewTreeViewModelStoreOwner
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
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.CallerLogger.d
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.manager.loop.BizLoopManager
|
||||
@@ -52,7 +50,7 @@ class SwitchTaskView: WindowRelativeLayout, SwtichTaskModel.SwtichLineViewCallba
|
||||
|
||||
private lateinit var mAdapter: SwitchLineTaskAdapter
|
||||
|
||||
private lateinit var linearLayoutManager:LinearLayoutManager
|
||||
private lateinit var linearLayoutManager:GridLayoutManager
|
||||
|
||||
init {
|
||||
LayoutInflater.from(context).inflate(R.layout.shuttle_weak_switch_task, this, true)
|
||||
@@ -60,7 +58,7 @@ class SwitchTaskView: WindowRelativeLayout, SwtichTaskModel.SwtichLineViewCallba
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
linearLayoutManager = GridLayoutManager(context, 3)
|
||||
linearLayoutManager = GridLayoutManager(context, 3)
|
||||
rv_switch_task.setLayoutManager(linearLayoutManager)
|
||||
mAdapter = SwitchLineTaskAdapter(context,null, mutableListOf())
|
||||
rv_switch_task.setAdapter(mAdapter)
|
||||
|
||||
@@ -5,9 +5,13 @@ import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.CheckBox
|
||||
import androidx.appcompat.widget.AppCompatImageView
|
||||
import androidx.appcompat.widget.AppCompatTextView
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.eagle.core.utilcode.kotlin.onClick
|
||||
import com.mogo.och.unmanned.taxi.R
|
||||
import com.mogo.och.unmanned.taxi.bean.PointError
|
||||
import me.jessyan.autosize.AutoSizeCompat
|
||||
|
||||
/**
|
||||
* Created by yangyakun on 06/06/17.
|
||||
@@ -42,12 +46,16 @@ class ErrorPointItemAdapter(
|
||||
|
||||
override fun onBindViewHolder(holder: TextVH, position: Int) {
|
||||
val errorInfo = dataList[holder.bindingAdapterPosition]
|
||||
holder.cbErrorInfo.text = errorInfo.name
|
||||
holder.cbErrorInfo.isChecked = errorInfo.isCheck
|
||||
holder.cbErrorInfo.setOnCheckedChangeListener { buttonView, isChecked ->
|
||||
if(buttonView==holder.cbErrorInfo){
|
||||
errorInfo.isCheck = isChecked
|
||||
}
|
||||
AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources)
|
||||
if (errorInfo.isCheck) {
|
||||
holder.cbErrorInfo.setImageResource(R.drawable.taxi_routing_check)
|
||||
}else{
|
||||
holder.cbErrorInfo.setImageResource(R.drawable.taxi_routing_uncheck)
|
||||
}
|
||||
holder.cbErrorResong.text = errorInfo.name
|
||||
holder.itemView.onClick {
|
||||
errorInfo.isCheck = !errorInfo.isCheck
|
||||
notifyItemChanged(holder.bindingAdapterPosition)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,9 +64,7 @@ class ErrorPointItemAdapter(
|
||||
}
|
||||
|
||||
inner class TextVH(itemView: View) : RecyclerView.ViewHolder(itemView) {
|
||||
var cbErrorInfo: CheckBox
|
||||
init {
|
||||
cbErrorInfo = itemView.findViewById(R.id.cb_error_info)
|
||||
}
|
||||
var cbErrorInfo: AppCompatImageView = itemView.findViewById(R.id.aciv_show_check_status)
|
||||
var cbErrorResong: AppCompatTextView = itemView.findViewById(R.id.actv_error_resong)
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import com.google.android.flexbox.AlignItems
|
||||
import com.google.android.flexbox.FlexDirection
|
||||
import com.google.android.flexbox.FlexWrap
|
||||
@@ -14,9 +15,11 @@ import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
import com.mogo.och.common.module.wigets.WindowRelativeLayout
|
||||
import com.mogo.och.common.module.wigets.dialog.CommonFeedbackDialog
|
||||
import com.mogo.och.unmanned.taxi.R
|
||||
import com.mogo.och.unmanned.taxi.bean.PointError
|
||||
import com.mogo.och.unmanned.taxi.ui.routing.TaxiRoutingLoadingDialog
|
||||
import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.lvs_loding
|
||||
import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.rvErrorPointReason
|
||||
import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.tv_report_error_point_reason
|
||||
import kotlinx.android.synthetic.main.taxt_report_error_point_panel.view.tv_report_error_point_reason_cancel
|
||||
@@ -58,12 +61,6 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
|
||||
private var occurrenceTime:Long = System.currentTimeMillis()
|
||||
|
||||
private val mLoadingDialog: TaxiRoutingLoadingDialog by lazy {
|
||||
TaxiRoutingLoadingDialog(
|
||||
context
|
||||
)
|
||||
}
|
||||
|
||||
private fun initView() {
|
||||
d(SceneConstant.M_TAXI_P + TAG, "initView")
|
||||
LayoutInflater.from(context).inflate(R.layout.taxt_report_error_point_panel, this, true)
|
||||
@@ -73,7 +70,7 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
flexboxLayoutManager.alignItems = AlignItems.CENTER
|
||||
flexboxLayoutManager.flexWrap = FlexWrap.WRAP
|
||||
|
||||
rvErrorPointReason?.layoutManager = flexboxLayoutManager
|
||||
rvErrorPointReason?.layoutManager = GridLayoutManager(context, 2)
|
||||
rvErrorPointReason?.setHasFixedSize(true)
|
||||
errorPointItemAdapter = ErrorPointItemAdapter(
|
||||
context, mutableListOf(
|
||||
@@ -91,7 +88,8 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
ToastUtils.showShort("请选择问题类型")
|
||||
return@onClick
|
||||
}
|
||||
mLoadingDialog.showLoading()
|
||||
tv_report_error_point_reason_cancel.isEnabled = false
|
||||
lvs_loding.visibility = VISIBLE
|
||||
this.viewModel?.submitErrorPointReasons(checkDataList,occurrenceTime)
|
||||
}
|
||||
}
|
||||
@@ -101,9 +99,8 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
d(SceneConstant.M_TAXI_P + TAG, "展示---:${isVisible}")
|
||||
if (isVisible) {
|
||||
occurrenceTime = System.currentTimeMillis()
|
||||
tv_work_order_time.text = "时间:${TimeUtils.millis2String(occurrenceTime, TimeUtils.getHourMinSecondFormat())}"
|
||||
tv_work_order_time.text = TimeUtils.millis2String(occurrenceTime, TimeUtils.getHourMinSecondFormat())
|
||||
viewModel?.getPointErrorReasons()
|
||||
mLoadingDialog.showLoading()
|
||||
} else {
|
||||
|
||||
}
|
||||
@@ -130,7 +127,6 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
}
|
||||
|
||||
override fun addViewData(it: MutableList<PointError>) {
|
||||
mLoadingDialog.hideLoading()
|
||||
errorPointItemAdapter.setDataList(it)
|
||||
}
|
||||
|
||||
@@ -138,12 +134,23 @@ class ReportErrorPointView : WindowRelativeLayout,
|
||||
msg?.let {
|
||||
ToastUtils.showLong(msg)
|
||||
}
|
||||
mLoadingDialog.hideLoading()
|
||||
lvs_loding.visibility = GONE
|
||||
CommonFeedbackDialog
|
||||
.Builder()
|
||||
.title("请重试")
|
||||
.status(CommonFeedbackDialog.Status.success)
|
||||
.build(context).show()
|
||||
}
|
||||
|
||||
override fun submitErrorReasons() {
|
||||
mLoadingDialog.hideLoading()
|
||||
this.closeCallback?.close()
|
||||
tv_report_error_point_reason_cancel.isEnabled = true
|
||||
lvs_loding.visibility = GONE
|
||||
closeCallback?.close()
|
||||
CommonFeedbackDialog
|
||||
.Builder()
|
||||
.title("打点成功")
|
||||
.status(CommonFeedbackDialog.Status.success)
|
||||
.build(context).show()
|
||||
}
|
||||
|
||||
fun setDismiss(listener: CloseCallback) {
|
||||
|
||||
@@ -10,6 +10,7 @@ import androidx.recyclerview.widget.DiffUtil.Callback
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.och.unmanned.taxi.R
|
||||
import com.mogo.och.unmanned.taxi.bean.GrayLineBean
|
||||
import me.jessyan.autosize.AutoSizeCompat
|
||||
|
||||
/**
|
||||
* 路线列表adapter
|
||||
@@ -49,6 +50,7 @@ class RoutingItemAdapter(
|
||||
override fun onBindViewHolder(holder: RoutingItemViewHolder, position: Int) {
|
||||
val currentPosition = holder.bindingAdapterPosition
|
||||
val routing = mData[currentPosition]
|
||||
AutoSizeCompat.autoConvertDensityOfGlobal(holder.itemView.resources)
|
||||
|
||||
holder.routingName.text = routing.lineName
|
||||
holder.todayVerifyNum.text = "今日验证:${routing.carVerificationCount}次"
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.4 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.4 KiB |
@@ -1,19 +1,31 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
<CheckBox
|
||||
android:id="@+id/cb_error_info"
|
||||
android:button="@null"
|
||||
android:text="原因"
|
||||
android:layout_margin="@dimen/dp_10"
|
||||
android:paddingStart="@dimen/dp_40"
|
||||
android:paddingEnd="@dimen/dp_40"
|
||||
android:paddingTop="@dimen/dp_14"
|
||||
android:paddingBottom="@dimen/dp_14"
|
||||
android:layout_width="match_parent"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
tools:background="@color/result_points"
|
||||
android:layout_height="@dimen/dp_90">
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/aciv_show_check_status"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:src="@drawable/taxi_routing_uncheck"
|
||||
android:layout_width="@dimen/dp_53"
|
||||
android:layout_height="@dimen/dp_53"/>
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/actv_error_resong"
|
||||
app:layout_constraintTop_toTopOf="@+id/aciv_show_check_status"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/aciv_show_check_status"
|
||||
app:layout_constraintStart_toEndOf="@+id/aciv_show_check_status"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:maxLines="2"
|
||||
android:ellipsize="end"
|
||||
android:lineSpacingMultiplier="0.7"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
tools:text="绕路绕路绕路绕路绕绕路绕路绕路绕路绕绕路绕路绕路绕路绕绕路绕路绕路绕路绕绕路绕路绕路绕路绕绕路绕路绕路绕路绕"
|
||||
android:textColor="@color/white"
|
||||
android:background="@drawable/taxi_error_point_reason_bg"
|
||||
android:layout_width="wrap_content"
|
||||
android:textSize="@dimen/dp_36"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"/>
|
||||
</FrameLayout>
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -1,105 +1,92 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<com.mogo.och.common.module.wigets.OCHRoundConstraintLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="@dimen/dp_844"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@drawable/taxi_error_point_report_bg">
|
||||
|
||||
<View
|
||||
android:id="@+id/view_title_bg"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="@dimen/dp_102"
|
||||
android:background="@drawable/taxi_error_point_head_bg"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="@dimen/dp_900"
|
||||
android:layout_height="@dimen/dp_730"
|
||||
android:background="@drawable/common_qr_dialog"
|
||||
app:roundLayoutRadius="@dimen/dp_50">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_report_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_33"
|
||||
android:text="问题上报"
|
||||
android:text="线路问题打点"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_34"
|
||||
android:textSize="@dimen/sp_45"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="@id/view_title_bg"
|
||||
app:layout_constraintStart_toStartOf="@id/view_title_bg"
|
||||
app:layout_constraintTop_toTopOf="@+id/view_title_bg" />
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_51"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_work_order_time"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginEnd="@dimen/dp_31"
|
||||
android:layout_marginEnd="@dimen/dp_67"
|
||||
android:text="时间"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_30"
|
||||
app:layout_constraintBottom_toBottomOf="@id/view_title_bg"
|
||||
app:layout_constraintEnd_toEndOf="@id/view_title_bg"
|
||||
app:layout_constraintTop_toTopOf="@id/view_title_bg" />
|
||||
|
||||
<View
|
||||
android:id="@+id/view_type_label"
|
||||
android:layout_width="@dimen/dp_6"
|
||||
android:layout_height="@dimen/dp_29"
|
||||
android:layout_marginStart="@dimen/dp_33"
|
||||
android:layout_marginTop="@dimen/dp_40"
|
||||
android:background="#FF0176FF"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/view_title_bg" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_type_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_13"
|
||||
android:text="问题类型"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="@id/view_type_label"
|
||||
app:layout_constraintLeft_toRightOf="@id/view_type_label"
|
||||
app:layout_constraintTop_toTopOf="@id/view_type_label" />
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_report_title"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_report_title"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
/>
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rvErrorPointReason"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginStart="@dimen/dp_23"
|
||||
android:layout_marginTop="@dimen/dp_6"
|
||||
android:layout_marginEnd="@dimen/dp_23"
|
||||
app:layout_constraintHeight_min="@dimen/dp_140"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tv_type_title" />
|
||||
android:layout_height="@dimen/dp_0"
|
||||
android:layout_marginStart="@dimen/dp_65"
|
||||
android:layout_marginTop="@dimen/dp_56"
|
||||
android:layout_marginEnd="@dimen/dp_65"
|
||||
android:layout_marginBottom="@dimen/dp_10"
|
||||
app:layout_constraintBottom_toTopOf="@+id/tv_report_error_point_reason"
|
||||
app:layout_constraintTop_toBottomOf="@+id/tv_report_title" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_report_error_point_reason"
|
||||
android:layout_width="@dimen/dp_370"
|
||||
android:layout_height="@dimen/dp_80"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:layout_marginBottom="@dimen/dp_40"
|
||||
android:background="@drawable/taxi_error_point_report_submit_bg"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:background="@drawable/common_button_cancle"
|
||||
android:gravity="center"
|
||||
android:text="上报"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/sp_27"
|
||||
android:text="打点"
|
||||
android:textColor="@color/taxi_color_2eacff"
|
||||
android:textSize="@dimen/sp_40"
|
||||
android:textStyle="bold"
|
||||
android:layout_marginBottom="@dimen/dp_65"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toLeftOf="@id/tv_report_error_point_reason_cancel"
|
||||
app:layout_constraintTop_toBottomOf="@+id/rvErrorPointReason" />
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginStart="@dimen/dp_65"
|
||||
/>
|
||||
|
||||
<com.mogo.och.common.module.wigets.loading.LoadingViewSmall
|
||||
android:id="@+id/lvs_loding"
|
||||
app:layout_constraintTop_toTopOf="@+id/tv_report_error_point_reason"
|
||||
app:layout_constraintBottom_toBottomOf="@+id/tv_report_error_point_reason"
|
||||
app:layout_constraintEnd_toEndOf="@+id/tv_report_error_point_reason"
|
||||
android:layout_marginEnd="@dimen/dp_30"
|
||||
android:visibility="gone"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_report_error_point_reason_cancel"
|
||||
android:layout_width="@dimen/dp_370"
|
||||
android:layout_height="@dimen/dp_80"
|
||||
android:layout_marginBottom="@dimen/dp_40"
|
||||
android:background="@drawable/taxi_error_point_report_cancle_bg"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:layout_marginBottom="@dimen/dp_65"
|
||||
android:background="@drawable/common_button_cancle"
|
||||
android:layout_marginEnd="@dimen/dp_66"
|
||||
android:gravity="center"
|
||||
android:text="取消"
|
||||
android:textColor="#FFFFFF"
|
||||
android:textSize="@dimen/sp_27"
|
||||
android:textSize="@dimen/sp_40"
|
||||
android:textStyle="bold"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toRightOf="@id/tv_report_error_point_reason"
|
||||
app:layout_constraintRight_toRightOf="parent" />
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</com.mogo.och.common.module.wigets.OCHRoundConstraintLayout>
|
||||
Reference in New Issue
Block a user