[6.10.0]数据落盘
This commit is contained in:
@@ -163,7 +163,7 @@ class DevaToolsProvider : IDevaToolsProvider, IAppStateListener {
|
||||
if (AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode)) {
|
||||
CallerHmiManager.toggleSafetyStopCarWarning(false)
|
||||
AppStateManager.currentActivity()?.also {
|
||||
AIAssist.getInstance(it).speakTTSVoice("请接管恢复停车状态")
|
||||
AIAssist.getInstance(it).speakTTSVoice("请接管恢复车辆状态")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
package com.mogo.eagle.core.function.hmi.ui.diskcopy
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import kotlinx.android.synthetic.main.dialog_disk_copy_exception.tvCopyExceptionClose
|
||||
|
||||
/**
|
||||
* 数据落盘辅助工具-异常情况及建议操作弹窗
|
||||
*/
|
||||
class DiskCopyExceptionDialog(context: Context) :
|
||||
BaseFloatDialog(context,TAG), LifecycleObserver {
|
||||
|
||||
companion object {
|
||||
private const val TAG = "DiskCopyExceptionDialog"
|
||||
}
|
||||
|
||||
init{
|
||||
setContentView(R.layout.dialog_disk_copy_exception)
|
||||
setCanceledOnTouchOutside(false)
|
||||
initView()
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
|
||||
//关闭异常弹窗
|
||||
tvCopyExceptionClose.setOnClickListener {
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
|
||||
}
|
||||
|
||||
override fun onDetachedFromWindow() {
|
||||
super.onDetachedFromWindow()
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
package com.mogo.eagle.core.function.hmi.ui.diskcopy
|
||||
|
||||
import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import androidx.recyclerview.widget.GridLayoutManager
|
||||
import com.mogo.eagle.core.data.deva.diskcopy.CopyCalendarInfo
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.ui.diskcopy.adapter.DiskCopyCalendarAdapter
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.groupDateSelect
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.groupDiskCopy
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.pbDiskCopyProgress
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.rvCalendar
|
||||
import kotlinx.android.synthetic.main.view_disk_copy.view.viewDiskCopyDate
|
||||
|
||||
/**
|
||||
* 数据落盘辅助工具
|
||||
*/
|
||||
class DiskCopyView @JvmOverloads constructor(
|
||||
context: Context,
|
||||
attrs: AttributeSet? = null,
|
||||
defStyleAttr: Int = 0
|
||||
) : ConstraintLayout(context, attrs, defStyleAttr){
|
||||
|
||||
companion object {
|
||||
const val TAG = "DiskCopyView"
|
||||
}
|
||||
|
||||
private var diskCopyCalendarAdapter: DiskCopyCalendarAdapter ?= null
|
||||
private var calendarList: ArrayList<CopyCalendarInfo> = ArrayList()
|
||||
|
||||
init{
|
||||
LayoutInflater.from(context).inflate(R.layout.view_disk_copy, this, true)
|
||||
initView()
|
||||
initData()
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
val gridLayoutManager = GridLayoutManager(context,7)
|
||||
diskCopyCalendarAdapter = DiskCopyCalendarAdapter()
|
||||
rvCalendar.adapter = diskCopyCalendarAdapter
|
||||
rvCalendar.layoutManager = gridLayoutManager
|
||||
|
||||
viewDiskCopyDate.setOnClickListener {
|
||||
//隐藏当前视图
|
||||
pbDiskCopyProgress.visibility = View.GONE
|
||||
groupDiskCopy.visibility = View.GONE
|
||||
//展示日历
|
||||
groupDateSelect.visibility = View.VISIBLE
|
||||
}
|
||||
}
|
||||
|
||||
private fun initData(){
|
||||
//添加日历星期标题头
|
||||
calendarList.add(CopyCalendarInfo(true,"日"))
|
||||
calendarList.add(CopyCalendarInfo(true,"一"))
|
||||
calendarList.add(CopyCalendarInfo(true,"二"))
|
||||
calendarList.add(CopyCalendarInfo(true,"三"))
|
||||
calendarList.add(CopyCalendarInfo(true,"四"))
|
||||
calendarList.add(CopyCalendarInfo(true,"五"))
|
||||
calendarList.add(CopyCalendarInfo(true,"六"))
|
||||
|
||||
|
||||
diskCopyCalendarAdapter?.setData(calendarList)
|
||||
}
|
||||
|
||||
override fun onAttachedToWindow() {
|
||||
super.onAttachedToWindow()
|
||||
|
||||
}
|
||||
|
||||
override fun onDetachedFromWindow() {
|
||||
super.onDetachedFromWindow()
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.mogo.eagle.core.function.hmi.ui.diskcopy
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.LifecycleObserver
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.function.hmi.dialog.BaseFloatDialog
|
||||
import kotlinx.android.synthetic.main.dialog_terminate_copy_data.tvCopyTerminateCancel
|
||||
import kotlinx.android.synthetic.main.dialog_terminate_copy_data.tvCopyTerminateConfirm
|
||||
|
||||
/**
|
||||
* 数据落盘-终止数据拷贝确认弹窗
|
||||
*/
|
||||
class TerminateCopyDataDialog(context: Context) :
|
||||
BaseFloatDialog(context,TAG), LifecycleObserver {
|
||||
|
||||
companion object {
|
||||
private const val TAG = "TerminateCopyDataDialog"
|
||||
}
|
||||
|
||||
init{
|
||||
setContentView(R.layout.dialog_terminate_copy_data)
|
||||
setCanceledOnTouchOutside(false)
|
||||
initView()
|
||||
}
|
||||
|
||||
private fun initView(){
|
||||
//确认终止数据拷贝
|
||||
tvCopyTerminateConfirm.setOnClickListener {
|
||||
//TODO
|
||||
dismiss()
|
||||
}
|
||||
//取消终止数据拷贝
|
||||
tvCopyTerminateCancel.setOnClickListener {
|
||||
//TODO
|
||||
dismiss()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.mogo.eagle.core.function.hmi.ui.diskcopy.adapter
|
||||
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.TextView
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.mogo.eagle.core.data.deva.diskcopy.CopyCalendarInfo
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
|
||||
/**
|
||||
* 数据落盘日历适配器
|
||||
*/
|
||||
class DiskCopyCalendarAdapter(): RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
|
||||
private var data: ArrayList<CopyCalendarInfo> ?= null
|
||||
|
||||
private val title: Int = 0
|
||||
|
||||
fun setData(list: ArrayList<CopyCalendarInfo>){
|
||||
data = list
|
||||
notifyDataSetChanged()
|
||||
}
|
||||
|
||||
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
|
||||
return when(viewType){
|
||||
title->{
|
||||
val view = LayoutInflater.from(parent.context).inflate(R.layout.item_calendar_title,parent,false)
|
||||
CalendarTitleHolder(view)
|
||||
}
|
||||
else->{
|
||||
val view = LayoutInflater.from(parent.context).inflate(R.layout.item_calendar_content,parent,false)
|
||||
CalendarContentHolder(view)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
|
||||
when(holder){
|
||||
is CalendarTitleHolder->{
|
||||
data?.let {
|
||||
holder.tvCalendarTitle.text = it[position].content
|
||||
}
|
||||
}
|
||||
is CalendarContentHolder->{
|
||||
data?.let {
|
||||
holder.tvCalendarContent.text = it[position].content
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun getItemCount() = data?.size ?: 0
|
||||
|
||||
override fun getItemViewType(position: Int): Int{
|
||||
return if(data!![position].isTitle){
|
||||
0
|
||||
}else {
|
||||
1
|
||||
}
|
||||
}
|
||||
|
||||
//Title
|
||||
class CalendarTitleHolder(itemView: View): RecyclerView.ViewHolder(itemView){
|
||||
var tvCalendarTitle: TextView = itemView.findViewById(R.id.tvCalendarTitle)
|
||||
}
|
||||
|
||||
//Content
|
||||
class CalendarContentHolder(itemView: View): RecyclerView.ViewHolder(itemView){
|
||||
var tvCalendarContent: TextView = itemView.findViewById(R.id.tvCalendarContent)
|
||||
}
|
||||
|
||||
}
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 14 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 470 B |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 KiB |
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<solid android:color="#FF333333" />
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
</shape>
|
||||
@@ -0,0 +1,35 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:paddingLeft="@dimen/dp_0">
|
||||
<!-- 设置背景色 -->
|
||||
<item
|
||||
android:id="@android:id/background"
|
||||
android:width="@dimen/dp_654"
|
||||
android:height="@dimen/dp_440"
|
||||
android:gravity="center_vertical">
|
||||
<shape>
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<solid android:color="#FFFFFFFF" />
|
||||
</shape>
|
||||
</item>
|
||||
|
||||
<!-- 设置进度条颜色 -->
|
||||
<item
|
||||
android:id="@android:id/progress"
|
||||
android:width="@dimen/dp_654"
|
||||
android:height="@dimen/dp_440"
|
||||
android:gravity="center_vertical">
|
||||
<shape>
|
||||
<corners
|
||||
android:topLeftRadius="@dimen/dp_50"
|
||||
android:bottomLeftRadius="@dimen/dp_50"
|
||||
android:topRightRadius="@dimen/dp_0"
|
||||
android:bottomRightRadius="@dimen/dp_0"
|
||||
/>
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:startColor="#00E5FF"
|
||||
android:endColor="#00FFA6"
|
||||
/>
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
||||
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" android:paddingLeft="@dimen/dp_0">
|
||||
<!-- 设置背景色 -->
|
||||
<item
|
||||
android:id="@android:id/background"
|
||||
android:width="@dimen/dp_590"
|
||||
android:height="@dimen/dp_60"
|
||||
android:gravity="center_vertical">
|
||||
<shape>
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<solid android:color="#FF333333" />
|
||||
</shape>
|
||||
</item>
|
||||
|
||||
<!-- 设置进度条颜色 -->
|
||||
<item
|
||||
android:id="@android:id/progress"
|
||||
android:width="@dimen/dp_590"
|
||||
android:height="@dimen/dp_60"
|
||||
android:gravity="center_vertical">
|
||||
<shape>
|
||||
<corners android:radius="@dimen/dp_16" />
|
||||
<gradient
|
||||
android:angle="0"
|
||||
android:startColor="#1F8DC0"
|
||||
android:endColor="#22DAF8"
|
||||
/>
|
||||
</shape>
|
||||
</item>
|
||||
</layer-list>
|
||||
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="@dimen/dp_900"
|
||||
android:layout_height="@dimen/dp_620"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:background="@drawable/bg_bone_dialog"
|
||||
app:roundLayoutRadius="@dimen/dp_50">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivCopyException"
|
||||
android:layout_width="@dimen/dp_140"
|
||||
android:layout_height="@dimen/dp_140"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_87"
|
||||
android:src="@drawable/icon_disk_copy_exception"
|
||||
android:contentDescription="@string/disk_copy_exception_icon"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyExceptionTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/ivCopyException"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_45"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyExceptionContent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvCopyExceptionTitle"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_36"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyExceptionClose"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginBottom="@dimen/dp_62"
|
||||
android:gravity="center"
|
||||
android:text="@string/disk_copy_exception_close"
|
||||
android:background="@drawable/bg_dialog_btn"
|
||||
android:textColor="@color/color_2EACFF"
|
||||
android:textSize="@dimen/dp_40"
|
||||
/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="@dimen/dp_900"
|
||||
android:layout_height="@dimen/dp_620"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:background="@drawable/bg_bone_dialog"
|
||||
app:roundLayoutRadius="@dimen/dp_50">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivDiskCopyTerminate"
|
||||
android:layout_width="@dimen/dp_150"
|
||||
android:layout_height="@dimen/dp_150"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_87"
|
||||
android:src="@drawable/icon_disk_copy_terminate"
|
||||
android:contentDescription="@string/disk_copy_terminate"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvTerminateTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/ivDiskCopyTerminate"
|
||||
android:layout_marginTop="@dimen/dp_30"
|
||||
android:text="@string/disk_copy_terminate_title"
|
||||
android:textSize="@dimen/sp_45"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvTerminateContent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvTerminateTitle"
|
||||
android:layout_marginTop="@dimen/dp_10"
|
||||
android:text="@string/disk_copy_terminate_content"
|
||||
android:textSize="@dimen/sp_36"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyTerminateConfirm"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:gravity="center"
|
||||
android:text="@string/disk_copy_terminate_confirm"
|
||||
android:background="@drawable/bg_dialog_btn"
|
||||
android:textColor="@color/color_2EACFF"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:layout_marginStart="@dimen/dp_65"
|
||||
android:layout_marginBottom="@dimen/dp_62"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyTerminateCancel"
|
||||
android:layout_width="@dimen/dp_356"
|
||||
android:layout_height="@dimen/dp_120"
|
||||
android:gravity="center"
|
||||
android:text="@string/disk_copy_terminate_cancel"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:background="@drawable/bg_dialog_btn"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginEnd="@dimen/dp_65"
|
||||
android:layout_marginBottom="@dimen/dp_62"
|
||||
app:layout_constraintRight_toRightOf="parent"/>
|
||||
|
||||
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/tvCalendarContent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="@dimen/sp_32"
|
||||
>
|
||||
|
||||
</TextView>
|
||||
@@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:id="@+id/tvCalendarTitle"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="#999999"
|
||||
>
|
||||
|
||||
</TextView>
|
||||
@@ -0,0 +1,210 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="@dimen/dp_692"
|
||||
android:layout_height="@dimen/dp_478"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:background="@drawable/bg_disk_copy">
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/pbDiskCopyProgress"
|
||||
android:layout_width="@dimen/dp_654"
|
||||
android:layout_height="@dimen/dp_440"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
android:progressDrawable="@drawable/progressbar_disk_copy_progress"
|
||||
android:max="100"
|
||||
android:progress="0"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvTitleDiskConnected"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_49"
|
||||
android:layout_marginStart="@dimen/dp_51"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_40"
|
||||
android:text="@string/hard_disk_connected"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivDiskUnplug"
|
||||
android:layout_width="@dimen/dp_114"
|
||||
android:layout_height="@dimen/dp_112"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
android:src="@drawable/icon_disk_unplug_connected"
|
||||
android:padding="@dimen/dp_40"
|
||||
android:layout_marginTop="@dimen/dp_24"
|
||||
android:layout_marginEnd="@dimen/dp_24"
|
||||
android:contentDescription="@string/hard_disk_unplug"
|
||||
/>
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/pbDiskUsedSpaces"
|
||||
android:layout_width="@dimen/dp_590"
|
||||
android:layout_height="@dimen/dp_60"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_135"
|
||||
style="?android:attr/progressBarStyleHorizontal"
|
||||
android:progressDrawable="@drawable/progressbar_disk_used_space"
|
||||
android:max="100"
|
||||
android:progress="0"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvDiskUsedPercent"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/pbDiskUsedSpaces"
|
||||
app:layout_constraintBottom_toBottomOf="@id/pbDiskUsedSpaces"
|
||||
app:layout_constraintStart_toStartOf="@id/pbDiskUsedSpaces"
|
||||
android:layout_marginStart="@dimen/dp_20"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_32"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvDiskFreeSpace"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/pbDiskUsedSpaces"
|
||||
app:layout_constraintBottom_toBottomOf="@id/pbDiskUsedSpaces"
|
||||
app:layout_constraintEnd_toEndOf="@id/pbDiskUsedSpaces"
|
||||
android:layout_marginEnd="@dimen/dp_20"
|
||||
android:textColor="@color/white"
|
||||
android:textSize="@dimen/sp_32"
|
||||
/>
|
||||
|
||||
<View
|
||||
android:id="@+id/viewDiskCopyDate"
|
||||
android:layout_width="@dimen/dp_590"
|
||||
android:layout_height="@dimen/dp_60"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/pbDiskUsedSpaces"
|
||||
android:layout_marginTop="@dimen/dp_59"
|
||||
android:background="@drawable/bg_disk_copy_date"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvDataDate"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintStart_toStartOf="@id/viewDiskCopyDate"
|
||||
android:layout_marginStart="@dimen/dp_20"
|
||||
android:text="@string/hard_disk_data_date"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="#FF999999"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCurrentDate"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintStart_toEndOf="@id/tvDataDate"
|
||||
android:layout_marginStart="@dimen/dp_30"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCurrentWeek"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintStart_toEndOf="@id/tvCurrentDate"
|
||||
android:layout_marginStart="@dimen/dp_20"
|
||||
android:textSize="@dimen/sp_32"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/ivDiskCopyDateSelect"
|
||||
android:layout_width="@dimen/dp_41"
|
||||
android:layout_height="@dimen/dp_33"
|
||||
app:layout_constraintTop_toTopOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintBottom_toBottomOf="@id/viewDiskCopyDate"
|
||||
app:layout_constraintEnd_toEndOf="@id/viewDiskCopyDate"
|
||||
android:layout_marginEnd="@dimen/dp_20"
|
||||
android:src="@drawable/icon_disk_copy_calendar"
|
||||
android:contentDescription="@string/disk_copy_date_select"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCopyStatus"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
android:layout_marginBottom="@dimen/dp_83"
|
||||
android:textSize="@dimen/sp_36"
|
||||
/>
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/groupDiskCopy"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="tvTitleDiskConnected,
|
||||
ivDiskUnplug,pbDiskUsedSpaces,tvDiskUsedPercent,
|
||||
tvDiskFreeSpace,viewDiskCopyDate,tvDataDate,tvCurrentDate,
|
||||
tvCurrentWeek,ivDiskCopyDateSelect,tvCopyStatus"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvTitleSelectDate"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
android:layout_marginTop="@dimen/dp_49"
|
||||
android:layout_marginStart="@dimen/dp_60"
|
||||
android:text="@string/select_copy_date"
|
||||
android:textSize="@dimen/dp_40"
|
||||
android:textColor="@color/white"
|
||||
/>
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tvCurrentMonth"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintStart_toStartOf="@id/tvTitleSelectDate"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvTitleSelectDate"
|
||||
android:layout_marginTop="@dimen/dp_28"
|
||||
android:textColor="#999999"
|
||||
android:textSize="@dimen/sp_26"
|
||||
/>
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/rvCalendar"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tvCurrentMonth"
|
||||
android:layout_marginTop="@dimen/dp_24"
|
||||
/>
|
||||
|
||||
<androidx.constraintlayout.widget.Group
|
||||
android:id="@+id/groupDateSelect"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
app:constraint_referenced_ids="tvTitleSelectDate,tvCurrentMonth,rvCalendar"
|
||||
android:visibility="gone"
|
||||
/>
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
@@ -269,4 +269,17 @@
|
||||
|
||||
<string name="fsm_demo_mode_error">FSM美化模式状态下异常标识</string>
|
||||
|
||||
<string name="hard_disk_connected">硬盘已接入</string>
|
||||
<string name="hard_disk_unplug">硬盘退出图标</string>
|
||||
<string name="hard_disk_data_date">数据日期</string>
|
||||
<string name="disk_copy_date_select">日期选择图标</string>
|
||||
<string name="select_copy_date">选择日期</string>
|
||||
<string name="disk_copy_terminate">终止数据拷贝确认图标</string>
|
||||
<string name="disk_copy_terminate_title">终止数据拷贝</string>
|
||||
<string name="disk_copy_terminate_content">终止数据拷贝并安全弹出硬盘</string>
|
||||
<string name="disk_copy_terminate_confirm">确认</string>
|
||||
<string name="disk_copy_terminate_cancel">取消</string>
|
||||
<string name="disk_copy_exception_icon">数据落盘异常图标</string>
|
||||
<string name="disk_copy_exception_close">关闭</string>
|
||||
|
||||
</resources>
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
package com.mogo.eagle.core.data.deva.diskcopy
|
||||
|
||||
data class CopyCalendarInfo(var isTitle: Boolean, var content: String)
|
||||
Reference in New Issue
Block a user