From 3433f3e9a0254b24cec2836b112267b1af3f9101 Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期一, 07 四月 2025 10:57:40 +0800 Subject: [PATCH] 1.jks打包相关修改 2.vip续费页面相关修改 --- app/src/main/java/com/example/firstapp/ui/vip/MemberInfoCardFragment.kt | 65 ++++++++++++++++++++++++++++---- 1 files changed, 57 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/example/firstapp/ui/vip/MemberInfoCardFragment.kt b/app/src/main/java/com/example/firstapp/ui/vip/MemberInfoCardFragment.kt index 3671d10..405783d 100644 --- a/app/src/main/java/com/example/firstapp/ui/vip/MemberInfoCardFragment.kt +++ b/app/src/main/java/com/example/firstapp/ui/vip/MemberInfoCardFragment.kt @@ -1,5 +1,6 @@ package com.example.firstapp.ui.vip +import android.graphics.Color import android.graphics.drawable.Drawable import androidx.fragment.app.viewModels import android.os.Bundle @@ -8,8 +9,7 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.ImageView -import androidx.databinding.DataBindingUtil +import androidx.lifecycle.lifecycleScope import com.bumptech.glide.Glide import com.bumptech.glide.load.engine.GlideException import com.bumptech.glide.load.resource.bitmap.RoundedCorners @@ -17,7 +17,9 @@ import com.bumptech.glide.request.target.Target import com.bumptech.glide.load.DataSource import com.example.firstapp.R + import com.example.firstapp.databinding.FragmentMemberInfoCardBinding +import kotlinx.coroutines.launch class MemberInfoCardFragment : Fragment() { @@ -26,11 +28,12 @@ fun newInstance() = MemberInfoCardFragment() } - private val viewModel: MemberInfoCardViewModel by viewModels() + val viewModel: MemberInfoCardViewModel by viewModels() // 绑定变量 private var _binding: FragmentMemberInfoCardBinding? = null private val binding get() = _binding!! + override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -49,9 +52,10 @@ // 绑定头像 Glide.with(this) - .load("http://192.168.1.201:9000/sms/avatar/avatar.jpg") + .load(viewModel.cover) .transform(RoundedCorners(100)) // 设置圆角 - .error(R.drawable.error_placeholder) // 如果加载失败,显示占位图 +// .error(R.drawable.error_placeholder) // 如果加载失败,显示占位图 + .error(R.mipmap.avatar_default) .listener(object : RequestListener<Drawable> { override fun onResourceReady( resource: Drawable?, @@ -80,9 +84,10 @@ // 绑定会员徽章 Glide.with(this) - .load("http://192.168.1.201:9000/sms/member/vip_no.png") + .load(viewModel.vipCover) .transform(RoundedCorners(100)) // 设置圆角 - .error(R.drawable.error_placeholder) // 如果加载失败,显示占位图 +// .error(R.drawable.error_placeholder) // 如果加载失败,显示占位图 + .error(R.mipmap.vip_no) .listener(object : RequestListener<Drawable> { override fun onResourceReady( resource: Drawable?, @@ -107,12 +112,56 @@ }) .into(binding.memberImageView) + + // 监听 cover 变化 + viewLifecycleOwner.lifecycleScope.launch { + viewModel.cover.collect { coverUrl -> + Glide.with(this@MemberInfoCardFragment) + .load(coverUrl) + .transform(RoundedCorners(100)) + .error(R.drawable.error_placeholder) + .into(binding.memberAvatarView) + } + } + + // 监听 vipCover 变化 + viewLifecycleOwner.lifecycleScope.launch { + viewModel.vipCover.collect { vipCoverUrl -> + Glide.with(this@MemberInfoCardFragment) + .load(vipCoverUrl) + .transform(RoundedCorners(100)) + .error(R.drawable.error_placeholder) + .into(binding.memberImageView) + } + } + + // 监听 background 变化 + viewLifecycleOwner.lifecycleScope.launch { + viewModel.background.collect { backgroundColor -> +// binding.memberCardCardView.setBackgroundColor(Color.parseColor(backgroundColor)) + binding.memberCardCardView.setBackgroundResource(backgroundColor) + } + } + + viewLifecycleOwner.lifecycleScope.launch { + viewModel.phoneTextColor.collect { color -> + binding.phoneNumberText.setTextColor(Color.parseColor(color)) + } + } + + viewLifecycleOwner.lifecycleScope.launch { + viewModel.memberStatusColor.collect { color -> + binding.memberStatus.setTextColor(Color.parseColor(color)) + } + } + return binding.root } - override fun onDestroyView() { super.onDestroyView() _binding = null } + + } \ No newline at end of file -- Gitblit v1.9.3