作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我的用户玩游戏时,我想将他们锁定 30 秒。我正在尝试使用 SharedPreferences
。我不太熟悉 SP,也不完全确定如何使用它。所以它应该是这样的
ifGameOver(){
//lock the game for 30 seconds
//send users to main menu until 30seconds is over
}
然后在主菜单上,我希望能够在 30 秒倒数时看到 TextView 倒计时。所以在这里我会 getLong
或其他东西(?)。任何人都可以阐明这一点吗?
最佳答案
在第一个 Activity
类中将当前时间保存到 SharedPreferences
:
private void saveCurrentTIme() {
SharedPreferences sharedpreferences = getSharedPreferences("myAppPref",
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedpreferences.edit();
editor.putLong("GameTime", System.currentTimeMillis());
editor.commit();
}
在第二个 Activity
类中从 SharedPreferences
中检索保存的时间:
private long getSavedTime() {
SharedPreferences sharedpreferences = getSharedPreferences("myAppPref", Context.MODE_PRIVATE);
return sharedpreferences.getLong(Name, 0L);
}
为了比较保存的时间是否已经过去,您可以创建类似Timer
的东西。
可以查看this answer如何去做。
关于java - 如何在两个 Activity 的共享首选项中存储时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57340089/
我是一名优秀的程序员,十分优秀!