当用户点击“提交”按钮时,先对用户输入进行合法性检查,如果姓名未填 给出提示信息;否则依次读取用户输入的姓名、性别、专业、爱好等信息,写入 SQLite 数据库中,并通过 Toast 给出提示;如果数据库尚不存在,自动创建;数 据写入数据库后,清除界面上的输入数据。代码

时间: 2024-02-23 19:02:17 浏览: 20
好的,你可以参考下面的代码实现: ```java public class MainActivity extends AppCompatActivity { private EditText mNameEditText; private EditText mGenderEditText; private EditText mMajorEditText; private EditText mHobbyEditText; private SQLiteDatabase mDatabase; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mNameEditText = findViewById(R.id.name_edit_text); mGenderEditText = findViewById(R.id.gender_edit_text); mMajorEditText = findViewById(R.id.major_edit_text); mHobbyEditText = findViewById(R.id.hobby_edit_text); // 创建或打开数据库 mDatabase = new MyDatabaseHelper(this).getWritableDatabase(); } public void onSubmitButtonClick(View view) { String name = mNameEditText.getText().toString(); String gender = mGenderEditText.getText().toString(); String major = mMajorEditText.getText().toString(); String hobby = mHobbyEditText.getText().toString(); // 检查姓名是否为空 if (TextUtils.isEmpty(name)) { Toast.makeText(this, "请输入姓名", Toast.LENGTH_SHORT).show(); return; } // 将用户输入的信息插入到数据库中 ContentValues values = new ContentValues(); values.put("name", name); values.put("gender", gender); values.put("major", major); values.put("hobby", hobby); mDatabase.insert("user", null, values); // 提示用户信息已经插入到数据库中 Toast.makeText(this, "信息已经保存到数据库中", Toast.LENGTH_SHORT).show(); // 清空输入框中的内容 mNameEditText.setText(""); mGenderEditText.setText(""); mMajorEditText.setText(""); mHobbyEditText.setText(""); } // 自定义数据库帮助类 private static class MyDatabaseHelper extends SQLiteOpenHelper { private static final String DATABASE_NAME = "my_db"; private static final int DATABASE_VERSION = 1; public MyDatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // 创建user表 db.execSQL("CREATE TABLE user (_id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, gender TEXT, major TEXT, hobby TEXT);"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 升级数据库版本 db.execSQL("DROP TABLE IF EXISTS user;"); onCreate(db); } } } ``` 这里我们使用了一个名为 MyDatabaseHelper 的内部类来创建或打开 SQLite 数据库,并在 onCreate() 方法中创建了一个名为 user 的表。在 onSubmitButtonClick() 方法中,我们对用户输入进行了合法性检查,并将用户输入的信息插入到 user 表中。最后,我们使用 EditText 的 setText() 方法将输入框中的内容清空。

相关推荐

最新推荐

recommend-type

用C语言实现从文本文件中读取数据后进行排序的功能

是一个十分可靠的程序,这个程序的查错能力非常强悍。程序包含了文件操作,归并排序和字符串输入等多种技术。对大家学习C语言很有帮助,有需要的一起来看看。
recommend-type

C#读取视频的宽度和高度等信息的方法

主要介绍了C#读取视频的宽度和高度等信息的方法,通过执行一条CMD命令来实现读取视频宽度和高度的功能,具有不错的实用价值,需要的朋友可以参考下
recommend-type

Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法

主要介绍了Java实现读取键盘输入保存到txt文件,再统计并输出每个单词出现次数的方法,涉及java文件I/O操作及字符串遍历、运算实现统计功能相关技巧,需要的朋友可以参考下
recommend-type

vue通过点击事件读取音频文件的方法

最近做项目遇到这样的一个需求,通过select元素来选择音频文件的名称,点击按钮可以进行试听。接下来通过本文给大家介绍vue项目中通过点击事件读取音频文件的方法,需要的朋友可以参考下
recommend-type

完美解决mysql in条件语句只读取一条信息问题的2种方案

使用mysql多表查询时一个表中的某个字段作为另一表的in查询条件,只能读取一条信息,而直接用数字的话可以正常读取
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

HSV转为RGB的计算公式

HSV (Hue, Saturation, Value) 和 RGB (Red, Green, Blue) 是两种表示颜色的方式。下面是将 HSV 转换为 RGB 的计算公式: 1. 将 HSV 中的 S 和 V 值除以 100,得到范围在 0~1 之间的值。 2. 计算色相 H 在 RGB 中的值。如果 H 的范围在 0~60 或者 300~360 之间,则 R = V,G = (H/60)×V,B = 0。如果 H 的范围在 60~120 之间,则 R = ((120-H)/60)×V,G = V,B = 0。如果 H 的范围在 120~180 之间,则 R = 0,G = V,B =
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。