首页 > 其他分享 >每日总结-23.3.17

每日总结-23.3.17

时间:2023-03-17 22:00:11浏览次数:60  
标签:总结 17 int month 23.3 calendar year Calendar day

今天写了打卡关于记录和检测连续打卡时长的代码

package com.example.daka1;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.icu.util.Calendar;
import android.os.Bundle;
import android.view.View;
import android.webkit.WebView;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.util.Date;

public class Dakajiemian extends AppCompatActivity {

    private MySQLiteHelper mySQLiteHelper;
    DatePicker datePicker;
    int year; //今年
    int month; //当前月份
    int day; //今天
    private EditText guanjianzi,meirizongjie;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_dakajiemian);

        Button querendaka=(Button)findViewById(R.id.querendaka);

        guanjianzi=findViewById(R.id.shuru_guanjianzi);
        meirizongjie=findViewById(R.id.shuru_meirizongjie);

        Calendar calendar= Calendar.getInstance(); //获取日历的实例
        year=calendar.get(Calendar.YEAR);
        month=calendar.get(Calendar.MONTH);//实际月份需要加1
        day=calendar.get(Calendar.DATE);

        final int[] yyear = new int[1];
        final int[] mmonth = new int[1];
        final int[] dday = new int[1];

        datePicker=(DatePicker)findViewById(R.id.timetable);
        datePicker.init(year,month,day,new DatePicker.OnDateChangedListener(){
            @Override
            public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
                yyear[0] =year;
                mmonth[0] =monthOfYear;
                dday[0] =dayOfMonth;
            }
        });
        Thesql thesql =new Thesql(this);

        xianshilianxu(year,month,day);


        Userxinxi userxinxi = (Userxinxi) getApplication();
        String username=userxinxi.getLoginName();

        final Userpd[] userpd = {new Userpd()};
        userpd[0] =thesql.chaxun(username);

        TextView textView = findViewById(R.id.zuichangjianchi);
        textView.setText("最长打卡"+ userpd[0].zuichang+"天");

        querendaka.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                String guanjianzi1=guanjianzi.getText().toString();
                String meirizingjie1=meirizongjie.getText().toString();
                String riqi;
                if(yyear[0]!=0) {
                     riqi = yyear[0] + "-" + (mmonth[0]+1) + "-" + dday[0];
                }else {
                     riqi = year + "-" + (month+1) + "-" + day;
                }
                String xuan=(yyear[0]+"")+(mmonth[0]+"")+(dday[0]+"");
                String jin=(year+"")+(month+"")+(day+"");

                if(thesql.dakachaxun(riqi)!=null)
                {
                    showMsg("该日已打卡");
                }else if (xuan.compareTo(jin)>0){
                    showMsg("时间未到");
                }else {
                    thesql.adddakajilu(riqi, guanjianzi1, meirizingjie1,username);
                    showMsg("打卡成功");
                    int i=xianshilianxu(year,month,day);
                    if(i> userpd[0].zuichang) {
                        userpd[0].zuichang = i;
                        thesql.xiugai(username, userpd[0]);
                    }
                    userpd[0] =thesql.chaxun(username);
                    TextView textView = findViewById(R.id.zuichangjianchi);
                    textView.setText("最长打卡"+ userpd[0].zuichang+"天");
                }
            }
        });
    }
    private int xianshilianxu(int year,int month,int day)
    {
        int jianchishijian=0;
        Thesql thesql =new Thesql(this);
        TextView textView1 = findViewById(R.id.yijianchi);
        String riqi1 = year + "-" + (month + 1) + "-" + day;
        if (thesql.dakachaxun(riqi1) != null) {
            jianchishijian = muqianlianxu(year, month, day,true);
            String yijianchitext="已坚持"+jianchishijian+"天";
            textView1.setText(yijianchitext);
        }else {
            jianchishijian = muqianlianxu(year, month, day,false);
            String yijianchitext="已坚持"+jianchishijian+"天";
            textView1.setText(yijianchitext);
        }
        return jianchishijian;
    }
    private int muqianlianxu(int year,int month,int day,boolean flag)//flag=true指今天已经打卡
    {
        int tianshu=0;
        String riqi;
        Thesql thesql =new Thesql(this);
        Calendar calendar= Calendar.getInstance();
        calendar.set(year,month,day);
        if(!flag) {
            calendar.add(Calendar.DAY_OF_MONTH, -1);
            year = calendar.get(Calendar.YEAR);
            month = calendar.get(Calendar.MONTH);//实际月份需要加1
            day = calendar.get(Calendar.DATE);
        }
        while(true) {
            riqi = year + "-" + (month + 1) + "-" + day;
            if (thesql.dakachaxun(riqi) != null) {
                tianshu++;
                calendar.add(Calendar.DAY_OF_MONTH, -1);
                year = calendar.get(Calendar.YEAR);
                month = calendar.get(Calendar.MONTH);//实际月份需要加1
                day = calendar.get(Calendar.DATE);
            } else {
                break;
            }
        }
        return tianshu;
    }
    private void showMsg(String msg){
        Toast.makeText(this, msg, Toast.LENGTH_LONG).show();
    }
}

 

标签:总结,17,int,month,23.3,calendar,year,Calendar,day
From: https://www.cnblogs.com/laobing6214/p/17228343.html

相关文章

  • 2023年3月17日(软件工程日报)
    访问公共空间1.检查App是否开启了指定权限权限检查需要调用ContextCompat的checkSelfPermission方法,该方法的第一个参数为活动实例,第二个参数为待检查的权限名称,例如存储......
  • 个人所最偏爱的“游戏的表达”的思考和总结
    思维导图,个人比较喜欢用MindMaster这个思维导图软件,所以会使用这个软件,来整理思绪。《游戏改变世界》中一些个人最为关注的观点个人的话,还是更喜欢,童话,卡通,童真类型的,......
  • 每日总结 3.17
    今天完成了web课程的实验报告一后,继续对查询线路的显示进行了优化处理。页面不会在查询之前显示null,使用foreach进行集合遍历。<%@pagelanguage="java"contentType="......
  • 3.17
    今天我们讨论了该如何快速遍历地铁的所有车站,由于地铁图过于复杂,再加上今天课很多,因此我们目前还没有商量出结果,根据网上内容,我推测出要使用欧拉回路算法,这部分算法对我们......
  • 今日总结
    今天我们讨论了该如何快速遍历地铁的所有车站,由于地铁图过于复杂,再加上今天课很多,因此我们目前还没有商量出结果,根据网上内容,我推测出要使用欧拉回路算法,这部分算法对我们......
  • 20230317
    数据结构remake第一天线性表的操作////babyDataStructrue.cpp//dataStructure////Createdbyon2023/3/17.#include<stdio.h>#defineN10#defineMAX20......
  • 3.17学习总结
    今天上web课上机实验学会了网页html的制作实验代码如下<!DOCTYPE html><html>    <head>        <title>信2105-3尹亚博个人主页</title>      ......
  • 3月17日
    计划执行09点40分 学习mybatis14点17分 开始学习知识记录mybatis的学习第一个mybatis程序mybatis导入依赖创建一个父工程的pom文件,将重复的依赖导入,就不会再重......
  • 3.17 总结
    前言:废掉了T1.线性代数考场时想到了线性基,但是思路仅从基底入手,没想到如何维护这个基的最大值小于\(n\)。题解:容易想到线性代数,相当于就是求任意元素小于\(n\)的......
  • idea使用tomcat部署项目失败总结
    情况①:无法访问localhost:8080页面解决办法:https://www.cnblogs.com/lwt280887072/p/16307489.html情况②:artifact项目:warexploded:Errorduringartifactdeployment......