将日期戳附加到' onClick' Android Studio中的活动

时间:2015-09-30 21:40:01

标签: android date variables onclick savechanges

我正在编写代码,每次单击textview时,它会将整数变量递增1。我想记录包含日期的点击事件,以便我可以根据每月历史记录或每周历史记录生成图表。

如何将日期戳附加到onclick事件?

例如,当用户点击“郁闷”时textview,我希望用时间戳保存它,以便我可以用它来告诉用户他在过去一个月里被压了7天,并用图表显示它。

我想使用日期和变量,我的应用程序中没有用户输入。就像FITBIT一样,它每天,每周,每月向您展示您的健康状况。

这是我的代码,它在SharedPrefs中保存变量并增加它们

//Retrieve the stored data for Values.
        SHAREDPREFS = getSharedPreferences(VALUES,MODE_PRIVATE);
        SharedPreferences.Editor editor = SHAREDPREFS.edit();

        switch (view.getId())
        {
        //increment values in VALUES sharedprefs to keep history
            case R.id.textView_depressed:
                int i_depressed= SHAREDPREFS.getInt("save_depressed",0);
                if (i_depressed>0)
                {
                    i_depressed++;
                    editor.putInt("save_depressed",i_depressed);
                    editor.apply();
                }
                else
                {
                    i_depressed++;
                    editor.putInt("save_depressed",i_depressed);
                    editor.apply();
                }
                Toast.makeText(getApplicationContext(),"Depressed = " + i_depressed,Toast.LENGTH_SHORT).show();
                break;

这是我到目前为止所写的草稿。 i_depressed是一个变量,当用户点击郁解的textview时,它将保存递增的值。我希望它用日期保存递增的值,然后我想在上周,过去15天,上个月或特定月份的日期范围内检索此变量的值。

1 个答案:

答案 0 :(得分:0)

您可以存储一个JSON数组,而不仅仅是保存单个变量,而数组的每个条目都包含一个(增量值,时间戳)。

无论何时启动应用程序,您都可以将数组加载到内存中。由于所有时间戳都按严格递增顺序排列,因此您可以在所需范围内找到该值。