2024.4.1

第二十天

所花时间:2小时

代码量:350

博客量:1

了解到的知识点:个人学习记录app——每日学习记录(每日打卡)

package com.hui.demo3;

import static com.hui.demo3.dao.StudentDao.getCurrentLoggedInUserId;
import android.annotation.SuppressLint;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import com.hui.demo3.dao.RecordDao;
import com.hui.demo3.dao.StudentDao;
import com.hui.demo3.entity.Record;

public class DailyCheckIn extends AppCompatActivity {

private EditText startTimeEditText;
private EditText endTimeEditText;
private EditText weekNumberEditText;
private EditText studyRecordEditText;
private Button submitButton;

@Override
protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_daily_check_in);

// 初始化界面组件
startTimeEditText = findViewById(R.id.startTimeEditText);
endTimeEditText = findViewById(R.id.endTimeEditText);
weekNumberEditText = findViewById(R.id.weekNumberEditText);
studyRecordEditText = findViewById(R.id.studyRecordEditText);
submitButton = findViewById(R.id.submitButton);

}

// 方法:插入每日打卡数据
public void insertDailyCheckIn(View view) {

String startTime = startTimeEditText.getText().toString();
String endTime = endTimeEditText.getText().toString();
String weekNumber = weekNumberEditText.getText().toString();
String studyRecord = studyRecordEditText.getText().toString();

// 创建 Record 对象
Record record = new Record();
record.setStudentId(getCurrentLoggedInUserId());
record.setStartTime(startTime);
record.setEndTime(endTime);
record.setWeekNum(Integer.parseInt(weekNumber));
record.setRecording(studyRecord);

new Thread() {
@Override
public void run() {
RecordDao recordDao = new RecordDao();
boolean success = recordDao.insertRecord(record);
if (success) {
hand.sendEmptyMessage(1); // 插入成功消息
StudentDao.incrementSetRecord();
} else {
hand.sendEmptyMessage(0); // 插入失败消息
}
}
}.start();
}

// Handler 处理消息
@SuppressLint("HandlerLeak")
final Handler hand = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == 0) {
Toast.makeText(getApplicationContext(), "每日打卡数据录入失败", Toast.LENGTH_LONG).show();
} else if (msg.what == 1) {
Toast.makeText(getApplicationContext(), "每日打卡数据录入成功", Toast.LENGTH_LONG).show();
finish(); // 插入成功后关闭当前活动
}
}
};
}
 
 
 
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#F5F5F5"
tools:context=".DailyCheckIn">

<!-- Logo -->
<ImageView
android:id="@+id/LogoImage"
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_marginTop="10dp"
android:src="@drawable/123"
app:layout_constraintTop_toTopOf="parent" />

<!-- 标题 -->
<TextView
android:id="@+id/TitleText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="25dp"
android:layout_marginEnd="25dp"
android:layout_marginTop="2dp"
android:gravity="center"
android:text="每日打卡"
android:textColor="#808080"
android:textSize="30sp"
android:textStyle="italic"
app:layout_constraintTop_toBottomOf="@id/LogoImage" />

<!-- 开始时间输入框 -->
<EditText
android:id="@+id/startTimeEditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="20dp"
android:background="@drawable/translucent_edit"
android:hint="开始时间"
android:inputType="none"
android:textColorHint="#808080"
android:textSize="18sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/TitleText" />

<!-- 结束时间输入框 -->
<EditText
android:id="@+id/endTimeEditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="10dp"
android:layout_marginEnd="20dp"
android:background="@drawable/translucent_edit"
android:hint="结束时间"
android:inputType="none"
android:textColorHint="#808080"
android:textSize="18sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/startTimeEditText" />

<!-- 周数输入框 -->
<EditText
android:id="@+id/weekNumberEditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="20dp"
android:background="@drawable/translucent_edit"
android:hint="周数"
android:inputType="number"
android:textColorHint="#808080"
android:textSize="18sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/endTimeEditText" />

<!-- 学习记录文本输入框 -->
<EditText
android:id="@+id/studyRecordEditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="20dp"
android:layout_marginTop="16dp"
android:layout_marginEnd="20dp"
android:background="@drawable/translucent_edit"
android:hint="输入学习记录"
android:inputType="textMultiLine"
android:minLines="4"
android:maxLines="10"
android:textColorHint="#808080"
android:textSize="18sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/weekNumberEditText" />

<!-- 提交按钮 -->
<Button
android:id="@+id/submitButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:background="@drawable/translucent_button"
android:text="提交"
android:textColor="@android:color/white"
android:textSize="20sp"
app:layout_constraintEnd_toEndOf="@id/studyRecordEditText"
app:layout_constraintStart_toStartOf="@id/studyRecordEditText"
app:layout_constraintTop_toBottomOf="@id/studyRecordEditText"
android:onClick="insertDailyCheckIn"/>

</androidx.constraintlayout.widget.ConstraintLayout>
posted @ 2024-04-07 22:31  cvjj  阅读(10)  评论(0)    收藏  举报