java - 通过另一个活动向活动发送价值
问题描述
我正在为我的 Rock Paper Scissors 游戏进行更新(我知道这是一个简单的概念,之前已经完成但仍然如此),更新包括布局和编程的巨大变化。
到目前为止,我有三个工作活动;MainMenu、SinglePlayer、SettingsActivity
当前的工作方式是用户将更改 SettingsActivity 中的设置(背景、振动等),当用户点击主菜单按钮时,它将捆绑所有值(浮动背景编号、布尔振动)并将其发送过来到 MainMenu 活动。MainMenu 然后将解包这些值并保存它们,因此当用户打开 SinglePlayer 或任何其他活动时,它可以将适当的值发送到该活动。
当用户想要重置 SinglePlayer 分数计数器时,问题就出现了......
这是有效的:用户在设置中按下“重置分数” -> 用户按下主菜单按钮 -> 用户打开单人游戏(分数重置,一切正常)
以下是不起作用的:用户在设置中按下“重置分数” -> 用户按下主菜单按钮 -> 用户打开单人游戏/退出应用程序以外的其他活动 -> 用户返回主菜单 -> 用户进入单人播放器(分数不会重置)
主菜单保存除 resetScore 布尔值以外的所有值(因此,每次打开 SinglePlayer 时,分数计数器都不会收到“resetScore = true;”)。
我不是在尝试做广告,但如果您在按照我的描述时遇到问题,请尝试按照上面在应用程序中提供的步骤进行操作:https: //play.google.com/apps/testing/com.simplegames.chris.rockpaperscissors20
解决方案
这可能被认为是“黑客”,但这对我有帮助。
按下“重置分数”按钮后,SinglePlayer Activity 立即打开以重置分数,然后发送回设置 Activity。它发生得如此之快,以至于它甚至看起来都没有离开设置活动。
我会删除这个问题,但谁知道......其他人(或将来的我)可能需要它?
推荐阅读
- python - 从 OpenStreetMap 获取大学名称
- haskell - 如何在 Haskell 中制作 isBst 函数
- reactjs - 如果变量在jsx中具有特定值,如何显示HTML元素
- architecture - 设计软件子任务的软件和体系结构
- computer-vision - 硬件上实时的密集光流,4K 分辨率 @30fps
- spring-batch - 如何使用自定义分区编写 Spring Batch 以执行并行处理
- android - Kotlin 中的 PublishSubject onError 函数
- c++ - 类的私有变量成员即使在赋值后也会显示垃圾数据
- discord.js - Discord.Js 机器人不等待响应
- javascript - 如何在 JavaScript 中的多维(2D)数组中的关联数组中设置/获取值