diff --git a/app/src/main/java/com/gamedog/vididin/beans/Account.kt b/app/src/main/java/com/gamedog/vididin/beans/Account.kt index 5ace738..a8af192 100644 --- a/app/src/main/java/com/gamedog/vididin/beans/Account.kt +++ b/app/src/main/java/com/gamedog/vididin/beans/Account.kt @@ -3,6 +3,7 @@ package com.gamedog.vididin.beans data class Account( var userId: Int = 0, + var userName: String = "", val accountId: String, val deviceUUId: String, val token: String="", diff --git a/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt b/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt index 831be7e..2c563f6 100644 --- a/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt +++ b/app/src/main/java/com/gamedog/vididin/login/AccountManager.kt @@ -16,7 +16,6 @@ import com.gamedog.vididin.beans.RECORD_GOLD_MINUS_CONVERT_2_CASH import com.gamedog.vididin.beans.RecordCash import com.gamedog.vididin.beans.RecordGold import com.gamedog.vididin.manager.RecordsManager -import com.remax.notification.controller.NotificationTriggerController import com.remax.notification.service.NotificationKeepAliveService import com.viddin.videos.free.R @@ -52,6 +51,11 @@ object AccountManager { } + fun updateUserName(userName: String) { + mAccount.userName = userName + saveAccountInfo() + } + //------------------------- 3个数值相关属性 增减 start --------------------------// fun getAccount() : Account { return mAccount diff --git a/app/src/main/java/com/gamedog/vididin/main/fragments/MineFragment.kt b/app/src/main/java/com/gamedog/vididin/main/fragments/MineFragment.kt index a96a3ff..e746c77 100644 --- a/app/src/main/java/com/gamedog/vididin/main/fragments/MineFragment.kt +++ b/app/src/main/java/com/gamedog/vididin/main/fragments/MineFragment.kt @@ -6,6 +6,7 @@ import android.view.LayoutInflater import android.view.ViewGroup import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat +import androidx.core.view.isVisible import androidx.core.view.updatePadding import androidx.fragment.app.viewModels import com.ama.core.architecture.appBase.AppViewsFragment @@ -13,9 +14,11 @@ import com.ama.core.architecture.appBase.OnFragmentBackgroundListener import com.ama.core.architecture.util.setOnClickBatch import com.ama.core.architecture.util.setStatusBarDarkFont import com.ama.core.common.util.dp +import com.gamedog.vididin.core.login.login.AccountManager import com.gamedog.vididin.router.Router import dagger.hilt.android.AndroidEntryPoint import kotlin.getValue +import com.viddin.videos.free.R import com.viddin.videos.free.databinding.VididinappFeatureMineFragmentMineBinding as ViewBinding import com.gamedog.vididin.main.fragments.mine.MineUiState as UiState import com.gamedog.vididin.main.fragments.mine.MineViewModel as ViewModel @@ -45,7 +48,7 @@ class MineFragment : AppViewsFragment(), } override fun ViewBinding.initViews() { - setOnClickBatch(rlPrivacy, rlVersion, rlFeedback) { + setOnClickBatch(rlPrivacy, rlVersion, rlFeedback, ivEditName) { when (this) { rlPrivacy -> { Router.Privacy.startActivity(requireActivity()) @@ -56,6 +59,35 @@ class MineFragment : AppViewsFragment(), rlFeedback -> { Router.Feedback.startActivity(requireActivity()) } + + ivEditName -> { + switchNameEditState(!etAccountName.isVisible) + } + } + } + + + tvAccountName.text = AccountManager.getAccount().userName + } + + private fun switchNameEditState(isEnterEdit: Boolean) { + + + binding?.let { + with(it) { + if (isEnterEdit) { + etAccountName.setText(tvAccountName.text.toString().trim()) + } else { + val newName = etAccountName.text.toString().trim() + if (newName.isNotEmpty()) { + tvAccountName.setText(newName) + AccountManager.updateUserName(newName) + } + } + + etAccountName.isVisible = isEnterEdit + tvAccountName.isVisible = !isEnterEdit + ivEditName.setImageResource(if (isEnterEdit) R.mipmap.task_gold else R.mipmap.task_gold) } } } diff --git a/app/src/main/res/layout/vididinapp_feature_mine_fragment_mine.xml b/app/src/main/res/layout/vididinapp_feature_mine_fragment_mine.xml index 07f280e..3e69e85 100644 --- a/app/src/main/res/layout/vididinapp_feature_mine_fragment_mine.xml +++ b/app/src/main/res/layout/vididinapp_feature_mine_fragment_mine.xml @@ -41,26 +41,50 @@ app:isCircle="true" /> - + android:layout_marginTop="10dp"> + + + + + + + + + -