java - 使用 SharedPrefernces 对来自 RecyclerView 的整数求和

标签 java android sum sharedpreferences

我正在尝试创建一个计算时间的应用程序。 我的情况: 我有一个包含很多元素的 RecyclerView,每个元素都有不同的 time 属性。

现在,当单击一个元素时,然后单击另一个元素,我希望对所有这些属性求和并将最终结果显示在另一个 Activity 中。 所以我想做的是使用 SharedPrefernces 来实现这一点:

private void getTime(int time) {
        SharedPreferences sharedPreferences = mContext.getSharedPreferences("sharedPrefs", MODE_PRIVATE);
        int time0 = sharedPreferences.getInt("TimeRetrieve", 0);

        int sum = time0 + time;




        SharedPreferences sharedPreferences2 = mContext.getSharedPreferences("sharedPrefs", MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences2.edit();
        editor.putInt("Time", sum);

        editor.apply();

TimeRetrieve 获取在 TextView 上显示的总时间,因此如果是第一次,它当然默认为 0。 之后,它应该将检索到的 int 与刚刚被单击然后保存在另一个 SharedPref 中的 Item 的 int 相加:Time

Time 被发送到 TextView,在那里它被 TimeRetrieve

检索

但是他的不起作用..

最佳答案

首先,您使用了 2 个不同的键:TimeRetrieveTime。所以,你不能计算总和。 其次,为什么要使用 2 个 SharedPreferences 对象?只需要一个。 第三,您不需要在这里使用 SharedPreferences。您只需在一个变量中求和您想要的内容,然后将其传递给带有额外 bundle 的其他 Activity。

关于java - 使用 SharedPrefernces 对来自 RecyclerView 的整数求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56874122/

相关文章:

Android NDK 网络问题 : TCP Connection fails

java - 如何在 spring boot 中生成 soap web 服务?

java - Struts 2 execAndWait + Spring 事务管理集成

java - 如何在java中对齐换行符?

sum - c3.js 饼图标题中的总数

sql - 一个(稍微复杂的)SQL 查询?

php - SQL:如何选择总计为特定值的行

java - 如何在 Dialog 的前台显示自己的 Toast?

java - 如何用Java制作按钮绘画?

android - 什么是用于 eclipse android 开发的好的、免费的源代码控制系统?