Kotlin高仿微信-项目实践58篇详细讲解了各个功能点,包括:注册、登录、主页、单聊(文本、表情、语音、图片、小视频、视频通话、语音通话、红包、转账)、群聊、个人信息、朋友圈、支付服务、扫一扫、搜索好友、添加好友、开通VIP等众多功能。
效果图:

实现代码:
/** * Author : wangning * Email : maoning20080809@163.com * Date : 2022/5/20 21:16 * Description : 我的零钱 */ class SmallChangeFragment : BaseDataBindingFragment() { private val userViewModel : UserViewModel by viewModels() override fun getLayoutRes() = R.layout.wc_small_change override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) super.builder().setTitleContent(R.string.wc_base_top_small_change) //先判断是否已经注册 if(!EventBus.getDefault().isRegistered(this)){ EventBus.getDefault().register(this) } small_change_recharge.setOnClickListener { Navigation.findNavController(it).navigate(R.id.action_rechange) } var account = DataStoreUtils.getAccount() userViewModel.getUserLocal(account) userViewModel.userBeanLocal.observe(viewLifecycleOwner){ TagUtils.d("2 SmallChangeFragment 主页 balance = ${it.balance}"); small_change_balance.text = CommonUtils.Base.getFormatBalanceUnit(it.balance) } } @Subscribe(threadMode = ThreadMode.MAIN) fun onMessageCallback(rechargeBalanceBean: RechargeBalanceBean) { TagUtils.d(" EventBus 返回的值:${rechargeBalanceBean.balance}"); small_change_balance.text =CommonUtils.Base.getFormatBalanceUnit( rechargeBalanceBean.balance) } override fun onDestroy() { super.onDestroy() EventBus.getDefault().unregister(this) } }