Ver Fonte

1. 修复中英文翻译的问题

bjb há 4 meses atrás
pai
commit
5a49e9a020

+ 1 - 1
data/src/main/java/com/grkj/data/data/CommonConstants.kt

@@ -30,7 +30,7 @@ object CommonConstants {
     /**
      * 默认自动登出时间
      */
-    const val DEFAULT_AUTO_LOGOUT_TIME = 1800_000L
+    const val DEFAULT_AUTO_LOGOUT_TIME = 60_000L
 
     /**
      * 人脸文件夹

+ 2 - 1
iscs_lock/src/main/java/com/grkj/iscs/features/main/dialog/SwipRfidOperationTipDialog.kt

@@ -3,6 +3,7 @@ package com.grkj.iscs.features.main.dialog
 import android.view.View
 import com.grkj.iscs.R
 import com.grkj.iscs.databinding.DialogSwipRfidOperationTipBinding
+import com.grkj.shared.utils.i18n.I18nManager
 import com.grkj.ui_base.skin.loadSkinIcon
 import com.grkj.ui_base.utils.CommonUtils
 import com.kongzue.dialogx.dialogs.CustomDialog
@@ -16,7 +17,7 @@ class SwipRfidOperationTipDialog() :
     OnBindView<CustomDialog>(R.layout.dialog_swip_rfid_operation_tip) {
     private val mPairList = mutableListOf(
         Pair(
-            CommonUtils.getStr(com.grkj.ui_base.R.string.please_swipe_rfid),
+            I18nManager.t("please_swipe_rfid"),
             "rfid.svg"
         )
     )

+ 12 - 16
iscs_lock/src/main/java/com/grkj/iscs/features/main/dialog/data_manage/AddUserDialog.kt

@@ -18,6 +18,7 @@ import com.grkj.iscs.databinding.ItemDeleteBtnBinding
 import com.grkj.iscs.features.main.dialog.SwipCardOperationTipDialog
 import com.grkj.iscs.features.main.dialog.TextDropDownDialog
 import com.grkj.shared.utils.BCryptUtils
+import com.grkj.shared.utils.i18n.I18nManager
 import com.grkj.ui_base.utils.CommonUtils
 import com.grkj.ui_base.utils.event.InRFIDScanModeEvent
 import com.grkj.ui_base.utils.extension.tip
@@ -52,9 +53,9 @@ class AddUserDialog(
     private var selectedWorkstations: List<TextDropDownDialog.TextDropDownEntity> = emptyList()
     private var swipeCardDialog: CustomDialog? = null
     private var faceData: MutableList<String> =
-        mutableListOf(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+        mutableListOf(I18nManager.t("register"))
     private var fingerprintGroupData: MutableList<String> =
-        mutableListOf(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+        mutableListOf(I18nManager.t("register"))
 
     override fun onBind(dialog: CustomDialog, v: View) {
         binding = DialogAddUserBinding.bind(v)
@@ -119,11 +120,11 @@ class AddUserDialog(
                 selectedWorkstations.mapNotNull { it.getId() },
                 binding.statusRg.checkedRadioButtonId == binding.activateRb.id
             )
-            if (faceData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }) {
+            if (faceData.none { it == I18nManager.t("register") }) {
                 vo.faceSavePath = faceData[0]
             }
             vo.fingerprintData =
-                fingerprintGroupData.filter { it != CommonUtils.getStr(com.grkj.ui_base.R.string.register) }
+                fingerprintGroupData.filter { it != I18nManager.t("register") }
             addUserDialogView = null
             onConfirm(vo, dialog)
         }
@@ -143,13 +144,12 @@ class AddUserDialog(
                         notifyDataSetChanged()
                     }
                 }
-                itemBinding.delete.isVisible =
-                    item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)
+                itemBinding.delete.isVisible = item != I18nManager.t("register")
                 itemBinding.delete.setDebouncedClickListener {
                     item.deleteIfExists()
                     faceData.remove(item)
                     if (faceData.isEmpty()) {
-                        faceData.add(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+                        faceData.add(I18nManager.t("register"))
                     }
                     notifyDataSetChanged()
                 }
@@ -163,12 +163,9 @@ class AddUserDialog(
             onBind {
                 val item = getModel<String>()
                 val itemBinding = getBinding<ItemDeleteBtnBinding>()
-                itemBinding.text.text =
-                    if (item == CommonUtils.getStr(com.grkj.ui_base.R.string.register)) item else "${
-                        CommonUtils.getStr(com.grkj.ui_base.R.string.fingerprint)
-                    }-${item.take(6)}"
+                itemBinding.text.text = if (item == I18nManager.t("register")) item else "${I18nManager.t("fingerprint")}-${item.take(6)}"
                 itemBinding.root.setDebouncedClickListener {
-                    if (item == CommonUtils.getStr(com.grkj.ui_base.R.string.register)) {
+                    if (item == I18nManager.t("register")) {
                         registerFingerPrint {
                             fingerprintGroupData.add(fingerprintGroupData.size - 1, it)
                             if (fingerprintGroupData.size - 1 == MMKVConstants.KEY_MAX_FINGERPRINT_INSERT.getMMKVData(
@@ -181,15 +178,14 @@ class AddUserDialog(
                         }
                     }
                 }
-                itemBinding.delete.isVisible =
-                    item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)
+                itemBinding.delete.isVisible = item != I18nManager.t("register")
                 itemBinding.delete.setDebouncedClickListener {
                     fingerprintGroupData.removeIf { it == item }
                     if (fingerprintGroupData.size - 1 < MMKVConstants.KEY_MAX_FINGERPRINT_INSERT.getMMKVData(
                             CommonConstants.DEFAULT_MAX_FINGERPRINT_INSERT_SIZE
-                        ) && fingerprintGroupData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }
+                        ) && fingerprintGroupData.none { it == I18nManager.t("register") }
                     ) {
-                        fingerprintGroupData.add(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+                        fingerprintGroupData.add(I18nManager.t("register"))
                     }
                     notifyDataSetChanged()
                 }

+ 22 - 23
iscs_lock/src/main/java/com/grkj/iscs/features/main/dialog/data_manage/UpdateUserDialog.kt

@@ -18,6 +18,7 @@ import com.grkj.iscs.databinding.ItemDeleteBtnBinding
 import com.grkj.iscs.features.main.dialog.SwipCardOperationTipDialog
 import com.grkj.iscs.features.main.dialog.TextDropDownDialog
 import com.grkj.shared.utils.BCryptUtils
+import com.grkj.shared.utils.i18n.I18nManager
 import com.grkj.ui_base.utils.CommonUtils
 import com.grkj.ui_base.utils.event.InRFIDScanModeEvent
 import com.grkj.ui_base.utils.extension.tip
@@ -52,9 +53,9 @@ class UpdateUserDialog(
     private var selectedWorkstations = mutableListOf<TextDropDownDialog.TextDropDownEntity>()
     private var swipeCardDialog: CustomDialog? = null
     private var faceData: MutableList<String> =
-        mutableListOf(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+        mutableListOf(I18nManager.t("register"))
     private var fingerprintGroupData: MutableList<String> =
-        mutableListOf(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+        mutableListOf(I18nManager.t("register"))
 
     override fun onBind(dialog: CustomDialog, v: View) {
         binding = DialogUpdateUserBinding.bind(v)
@@ -72,7 +73,7 @@ class UpdateUserDialog(
         binding.usernameEt.setText(userVo.userName)
         binding.nicknameEt.setText(userVo.nickName)
         binding.cardcodeEt.setText(userVo.cardNfc)
-        binding.roleTv.text = userVo.roleNames.filterNotNull().joinToString(",")
+        binding.roleTv.text = userVo.roleKeys.joinToString(",") { I18nManager.t(it ?: "") }
         binding.workstationNameTv.text = userVo.workstationNames.filterNotNull().joinToString(",")
         binding.activateRb.isChecked = userVo.getStatus()
         binding.deactivateRb.isChecked = !userVo.getStatus()
@@ -85,17 +86,15 @@ class UpdateUserDialog(
             fingerprintGroupData.addAll(userVo.fingerprintData)
             if (fingerprintGroupData.size - 1 < MMKVConstants.KEY_MAX_FINGERPRINT_INSERT.getMMKVData(
                     CommonConstants.DEFAULT_MAX_FINGERPRINT_INSERT_SIZE
-                ) && fingerprintGroupData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }
+                ) && fingerprintGroupData.none { it == I18nManager.t("register") }
             ) {
-                fingerprintGroupData.add(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+                fingerprintGroupData.add(I18nManager.t("register"))
             }
         }
 
         // 标记已选
-        selectedRoles = roleData.filter { it.getShowText() in userVo.roleNames }.toMutableList()
-        selectedWorkstations =
-            workstationData.flatMap { it.findTreeData { it.getShowText() in userVo.workstationNames } }
-                .toMutableList()
+        selectedRoles = roleData.filter { it.getShowText() in userVo.roleKeys.map { I18nManager.t(it ?: "") } }.toMutableList()
+        selectedWorkstations = workstationData.flatMap { it.findTreeData { it.getShowText() in userVo.workstationNames } }.toMutableList()
 
         // 角色多选
         binding.roleTv.setOnClickListener {
@@ -129,7 +128,7 @@ class UpdateUserDialog(
         // 取消/关闭
         binding.cancel.setDebouncedClickListener {
             updateUserDialogView = null
-            if (faceData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }) {
+            if (faceData.none { it == I18nManager.t("register") }) {
                 if (userVo.faceSavePath != faceData[0]) {
                     faceData[0].deleteIfExists()
                 }
@@ -139,7 +138,7 @@ class UpdateUserDialog(
         }
         binding.closeIv.setDebouncedClickListener {
             updateUserDialogView = null
-            if (faceData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }) {
+            if (faceData.none { it == I18nManager.t("register") }) {
                 if (userVo.faceSavePath != faceData[0]) {
                     faceData[0].deleteIfExists()
                 }
@@ -173,7 +172,7 @@ class UpdateUserDialog(
                 selectedWorkstations.mapNotNull { it.getId() },
                 isActive
             )
-            if (faceData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }) {
+            if (faceData.none { it == I18nManager.t("register") }) {
                 if (userVo.faceSavePath != faceData[0]) {
                     userVo.faceSavePath?.deleteIfExists()
                 }
@@ -183,7 +182,7 @@ class UpdateUserDialog(
                 updateVo.faceSavePath = null
             }
             updateVo.fingerprintData =
-                fingerprintGroupData.filter { it != CommonUtils.getStr(com.grkj.ui_base.R.string.register) }
+                fingerprintGroupData.filter { it != I18nManager.t("register") }
             updateUserDialogView = null
             onConfirm(updateVo, dialog)
         }
@@ -196,9 +195,9 @@ class UpdateUserDialog(
                 val item = getModel<String>()
                 val itemBinding = getBinding<ItemDeleteBtnBinding>()
                 itemBinding.text.text =
-                    if (item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)) CommonUtils.getStr(com.grkj.ui_base.R.string.face) else item
+                    if (item != I18nManager.t("register")) I18nManager.t("face") else item
                 itemBinding.root.setDebouncedClickListener {
-                    if (item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)) {
+                    if (item != I18nManager.t("register")) {
                         return@setDebouncedClickListener
                     }
                     RegisterFaceDialog.show { imageData, savePath ->
@@ -207,12 +206,12 @@ class UpdateUserDialog(
                         notifyDataSetChanged()
                     }
                 }
-                itemBinding.delete.isVisible = item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)
+                itemBinding.delete.isVisible = item != I18nManager.t("register")
                 itemBinding.delete.setDebouncedClickListener {
                     item.deleteIfExists()
                     faceData.remove(item)
                     if (faceData.isEmpty()) {
-                        faceData.add(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+                        faceData.add(I18nManager.t("register"))
                     }
                     notifyDataSetChanged()
                 }
@@ -227,11 +226,11 @@ class UpdateUserDialog(
                 val item = getModel<String>()
                 val itemBinding = getBinding<ItemDeleteBtnBinding>()
                 itemBinding.text.text =
-                    if (item == CommonUtils.getStr(com.grkj.ui_base.R.string.register)) item else "${
-                        CommonUtils.getStr(com.grkj.ui_base.R.string.fingerprint)
+                    if (item == I18nManager.t("register")) item else "${
+                        I18nManager.t("fingerprint")
                     }-${item.take(6)}"
                 itemBinding.root.setDebouncedClickListener {
-                    if (item == CommonUtils.getStr(com.grkj.ui_base.R.string.register)) {
+                    if (item == I18nManager.t("register")) {
                         registerFingerPrint {
                             fingerprintGroupData.add(fingerprintGroupData.size - 1, it)
                             if (fingerprintGroupData.size - 1 == MMKVConstants.KEY_MAX_FINGERPRINT_INSERT.getMMKVData(
@@ -244,14 +243,14 @@ class UpdateUserDialog(
                         }
                     }
                 }
-                itemBinding.delete.isVisible = item != CommonUtils.getStr(com.grkj.ui_base.R.string.register)
+                itemBinding.delete.isVisible = item != I18nManager.t("register")
                 itemBinding.delete.setDebouncedClickListener {
                     fingerprintGroupData.removeIf { it == item }
                     if (fingerprintGroupData.size - 1 < MMKVConstants.KEY_MAX_FINGERPRINT_INSERT.getMMKVData(
                             CommonConstants.DEFAULT_MAX_FINGERPRINT_INSERT_SIZE
-                        ) && fingerprintGroupData.none { it == CommonUtils.getStr(com.grkj.ui_base.R.string.register) }
+                        ) && fingerprintGroupData.none { it == I18nManager.t("register") }
                     ) {
-                        fingerprintGroupData.add(CommonUtils.getStr(com.grkj.ui_base.R.string.register))
+                        fingerprintGroupData.add(I18nManager.t("register"))
                     }
                     notifyDataSetChanged()
                 }

+ 3 - 3
iscs_lock/src/main/java/com/grkj/iscs/features/main/fragment/data_manage/UserManageFragment.kt

@@ -86,7 +86,7 @@ class UserManageFragment : BaseFragment<FragmentUserManageBinding>() {
             viewModel.isDialogRead = true
             viewModel.getRoleAndWorkStationData().observe(this) {
                 AddUserDialog.show(viewModel.roleData.map {
-                    val i18NRoleName = CommonUtils.getStr(it.roleKey ?: "")
+                    val i18NRoleName = CommonUtils.getStr(it.roleKey)
                     val roleName = if (i18NRoleName == it.roleKey || i18NRoleName.isEmpty()) {
                         it.roleName
                     } else {
@@ -187,7 +187,7 @@ class UserManageFragment : BaseFragment<FragmentUserManageBinding>() {
         val item = holder.getModel<UserManageVo>()
         itemBinding.nickname.text = item.nickName
         itemBinding.cardCode.text = item.cardNfc
-        itemBinding.role.text = item.roleNames.joinToString(",")
+        itemBinding.role.text = item.roleKeys.joinToString(",") { CommonUtils.getStr(it ?: "") }//item.roleNames.joinToString(",")
         itemBinding.select.setOnCheckedChangeListener(null)
         itemBinding.select.isChecked = item.isSelected
         itemBinding.select.setOnCheckedChangeListener { _, checked ->
@@ -230,7 +230,7 @@ class UserManageFragment : BaseFragment<FragmentUserManageBinding>() {
             viewModel.getRoleAndWorkStationData().observe(this@UserManageFragment) {
                 viewModel.getUserFingerprintAndFaceData(item).observe(this@UserManageFragment) {
                     UpdateUserDialog.show(item, viewModel.roleData.map {
-                        val i18NRoleName = I18nManager.t(it.roleKey ?: "")
+                        val i18NRoleName = I18nManager.t(it.roleKey)
                         val roleName = if (i18NRoleName == it.roleKey || i18NRoleName.isEmpty()) {
                             it.roleName
                         } else {

+ 2 - 2
iscs_lock/src/main/res/layout-land/fragment_point_manage.xml

@@ -171,9 +171,9 @@
                 android:layout_height="match_parent"
                 android:layout_weight="1"
                 android:gravity="center"
-                android:text="@string/operation"
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"operation"}' />
         </LinearLayout>
 
         <com.scwang.smart.refresh.layout.SmartRefreshLayout

+ 8 - 7
iscs_lock/src/main/res/layout-land/item_point_manage_point.xml

@@ -12,8 +12,8 @@
             android:id="@+id/select"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            app:useMaterialThemeColors="true"
-            android:layout_gravity="center" />
+            android:layout_gravity="center"
+            app:useMaterialThemeColors="true" />
 
         <TextView
             android:id="@+id/point_name"
@@ -50,11 +50,12 @@
             android:gravity="center"
             android:textColor="?attr/colorTextPrimary"
             android:textSize="@dimen/iscs_text_md" />
+
         <LinearLayout
             android:layout_width="0dp"
             android:layout_height="match_parent"
-            android:gravity="center"
-            android:layout_weight="1">
+            android:layout_weight="1"
+            android:gravity="center">
 
             <TextView
                 android:id="@+id/register_rfid"
@@ -62,11 +63,11 @@
                 android:layout_height="match_parent"
                 android:ellipsize="end"
                 android:gravity="center"
-                android:singleLine="true"
                 android:paddingHorizontal="@dimen/common_spacing"
-                android:text="@string/register_point_rfid"
+                android:singleLine="true"
                 android:textColor="?attr/colorTextClick"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"register_point_rfid"}' />
         </LinearLayout>
     </LinearLayout>
 </layout>

+ 7 - 8
iscs_lock/src/main/res/layout/dialog_add_user.xml

@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <layout 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">
+    xmlns:app="http://schemas.android.com/apk/res-auto">
 
     <LinearLayout
         android:layout_width="wrap_content"
@@ -167,11 +166,11 @@
                     android:background="@drawable/common_btn_bg"
                     android:drawablePadding="@dimen/iscs_space_2"
                     android:gravity="center"
-                    android:minHeight="@dimen/common_btn_height"
-                    android:paddingHorizontal="@dimen/iscs_space_4"
-                    android:text="@string/swip_card_to_register"
+                    android:minHeight="26dp"
+                    android:paddingHorizontal="10dp"
                     android:textColor="?attr/colorTextPrimary"
-                    android:textSize="@dimen/iscs_text_md" />
+                    android:textSize="@dimen/iscs_text_sm"
+                    app:i18nKey='@{"swip_card_to_register"}' />
             </LinearLayout>
 
             <com.grkj.ui_base.widget.RequiredTextView
@@ -230,10 +229,10 @@
                 android:id="@+id/face_tv"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/face"
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
                 app:formRole="label"
+                app:i18nKey='@{"face"}'
                 app:markPosition="start"
                 app:required="false" />
 
@@ -248,10 +247,10 @@
                 android:id="@+id/fingerprint_tv"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/fingerprint"
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
                 app:formRole="label"
+                app:i18nKey='@{"fingerprint"}'
                 app:markPosition="start"
                 app:required="false" />
 

+ 8 - 8
iscs_lock/src/main/res/layout/dialog_update_user.xml

@@ -58,9 +58,9 @@
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
                 app:formRole="label"
-                app:required="true"
+                app:i18nKey='@{"user_name"}'
                 app:markPosition="start"
-                app:i18nKey='@{"user_name"}' />
+                app:required="true" />
 
             <EditText
                 android:id="@+id/username_et"
@@ -168,11 +168,11 @@
                     android:background="@drawable/common_btn_bg"
                     android:drawablePadding="@dimen/iscs_space_2"
                     android:gravity="center"
-                    android:minHeight="@dimen/common_btn_height"
-                    android:paddingHorizontal="@dimen/iscs_space_4"
-                    android:text="@string/swip_card_to_register"
+                    android:minHeight="26dp"
+                    android:paddingHorizontal="10dp"
                     android:textColor="?attr/colorTextPrimary"
-                    android:textSize="@dimen/iscs_text_md" />
+                    android:textSize="@dimen/iscs_text_sm"
+                    app:i18nKey='@{"swip_card_to_register"}' />
             </LinearLayout>
 
             <com.grkj.ui_base.widget.RequiredTextView
@@ -231,10 +231,10 @@
                 android:id="@+id/face_tv"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/face"
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
                 app:formRole="label"
+                app:i18nHint='@{"face"}'
                 app:markPosition="start"
                 app:required="false" />
 
@@ -249,10 +249,10 @@
                 android:id="@+id/fingerprint_tv"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/fingerprint"
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
                 app:formRole="label"
+                app:i18nHint='@{"fingerprint"}'
                 app:markPosition="start"
                 app:required="false" />
 

+ 26 - 25
iscs_lock/src/main/res/layout/fragment_point_manage.xml

@@ -28,10 +28,10 @@
                 android:layout_height="wrap_content"
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:layout_weight="1"
-                app:i18nKey='@{"point_manage_title"}'
                 android:textColor="?attr/colorTextPrimary"
                 android:textSize="@dimen/iscs_text_md"
-                android:textStyle="bold" />
+                android:textStyle="bold"
+                app:i18nKey='@{"point_manage_title"}' />
 
             <TextView
                 android:id="@+id/back"
@@ -41,14 +41,14 @@
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:background="@drawable/common_btn_secondary"
                 android:drawableLeft="@mipmap/icon_back"
-                android:drawableTint="?attr/colorPrimary"
                 android:drawablePadding="@dimen/iscs_space_2"
+                android:drawableTint="?attr/colorPrimary"
                 android:gravity="center"
                 android:minHeight="@dimen/common_btn_height"
                 android:paddingHorizontal="@dimen/iscs_space_4"
-                app:i18nKey='@{"back"}'
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"back"}' />
         </LinearLayout>
 
         <View
@@ -71,9 +71,9 @@
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:background="@drawable/common_btn_secondary"
                 android:paddingHorizontal="@dimen/iscs_space_4"
-                app:i18nKey='@{"insert"}'
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"insert"}' />
 
 
             <TextView
@@ -83,9 +83,9 @@
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:background="@drawable/common_btn_secondary"
                 android:paddingHorizontal="@dimen/iscs_space_4"
-                app:i18nKey='@{"delete"}'
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"delete"}' />
 
             <TextView
                 android:id="@+id/reset"
@@ -94,9 +94,9 @@
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:background="@drawable/common_btn_secondary"
                 android:paddingHorizontal="@dimen/iscs_space_4"
-                app:i18nKey='@{"reset"}'
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"reset"}' />
 
             <View
                 android:layout_width="0dp"
@@ -110,9 +110,9 @@
                 android:layout_marginLeft="@dimen/iscs_space_2"
                 android:background="@drawable/common_btn_secondary"
                 android:paddingHorizontal="@dimen/iscs_space_4"
-                app:i18nKey='@{"filter"}'
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"filter"}' />
         </LinearLayout>
 
         <LinearLayout
@@ -137,8 +137,8 @@
                 android:layout_weight="1"
                 android:gravity="center"
                 android:textColor="?attr/colorTextPrimary"
-                app:i18nKey='@{"point_manage_point_name"}'
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"point_manage_point_name"}' />
 
             <TextView
                 android:layout_width="0dp"
@@ -146,8 +146,8 @@
                 android:layout_weight="1"
                 android:gravity="center"
                 android:textColor="?attr/colorTextPrimary"
-                app:i18nKey='@{"point_manage_point_function"}'
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"point_manage_point_function"}' />
 
             <TextView
                 android:layout_width="0dp"
@@ -155,16 +155,17 @@
                 android:layout_weight="1"
                 android:gravity="center"
                 android:textColor="?attr/colorTextPrimary"
-                app:i18nKey='@{"point_manage_workstation"}'
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"point_manage_workstation"}' />
+
             <TextView
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_weight="1"
                 android:gravity="center"
                 android:textColor="?attr/colorTextPrimary"
-                android:text="@string/operation"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"operation"}' />
         </LinearLayout>
 
         <com.scwang.smart.refresh.layout.SmartRefreshLayout
@@ -177,14 +178,14 @@
             <com.drake.statelayout.StateLayout
                 android:id="@+id/state"
                 android:layout_width="match_parent"
-                android:background="@drawable/common_card_bg"
-                android:layout_height="match_parent">
+                android:layout_height="match_parent"
+                android:background="@drawable/common_card_bg">
 
                 <androidx.recyclerview.widget.RecyclerView
                     android:id="@+id/list_rv"
                     android:layout_width="match_parent"
-                    android:background="@drawable/common_card_bg"
-                    android:layout_height="match_parent"/>
+                    android:layout_height="match_parent"
+                    android:background="@drawable/common_card_bg" />
             </com.drake.statelayout.StateLayout>
         </com.scwang.smart.refresh.layout.SmartRefreshLayout>
     </LinearLayout>

+ 2 - 2
iscs_lock/src/main/res/layout/fragment_user_manage.xml

@@ -164,9 +164,9 @@
                 android:layout_height="match_parent"
                 android:layout_weight="1"
                 android:gravity="center"
-                android:text="@string/operation"
                 android:textColor="?attr/colorTextPrimary"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"operation"}' />
         </LinearLayout>
 
         <com.scwang.smart.refresh.layout.SmartRefreshLayout

+ 11 - 11
iscs_lock/src/main/res/layout/item_user_manage_user.xml

@@ -47,10 +47,10 @@
         <com.google.android.flexbox.FlexboxLayout
             android:layout_width="0dp"
             android:layout_height="wrap_content"
-            android:layout_weight="1"
             android:layout_gravity="center_vertical"
-            android:paddingVertical="@dimen/iscs_space_1"
+            android:layout_weight="1"
             android:gravity="center_vertical"
+            android:paddingVertical="@dimen/iscs_space_1"
             app:alignItems="center"
             app:dividerDrawableHorizontal="@drawable/common_divider_small_space_horizontal"
             app:flexDirection="row"
@@ -64,11 +64,11 @@
                 android:layout_height="wrap_content"
                 android:ellipsize="end"
                 android:gravity="center"
-                android:singleLine="true"
                 android:paddingHorizontal="@dimen/common_spacing"
-                android:text="@string/register_job_card"
+                android:singleLine="true"
                 android:textColor="?attr/colorTextClick"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"register_job_card"}' />
 
             <TextView
                 android:id="@+id/register_fingerprint"
@@ -76,11 +76,11 @@
                 android:layout_height="wrap_content"
                 android:ellipsize="end"
                 android:gravity="center"
-                android:singleLine="true"
                 android:paddingHorizontal="@dimen/common_spacing"
-                android:text="@string/register_fingerprint"
+                android:singleLine="true"
                 android:textColor="?attr/colorTextClick"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"register_fingerprint"}' />
 
             <TextView
                 android:id="@+id/register_face"
@@ -88,11 +88,11 @@
                 android:layout_height="wrap_content"
                 android:ellipsize="end"
                 android:gravity="center"
-                android:singleLine="true"
                 android:paddingHorizontal="@dimen/common_spacing"
-                android:text="@string/register_face"
+                android:singleLine="true"
                 android:textColor="?attr/colorTextClick"
-                android:textSize="@dimen/iscs_text_md" />
+                android:textSize="@dimen/iscs_text_md"
+                app:i18nKey='@{"register_face"}' />
         </com.google.android.flexbox.FlexboxLayout>
     </LinearLayout>
 </layout>