AndroidStudio制作个人资料界面模块以及SQLite数据库的使用
前言
大家好,我是 Vic
,今天给大家带来AndroidStudio制作个人资料界面模块以及SQLite数据库的使用
的概述,希望你们喜欢
学习目标
- 掌握SQLite数据库的使用,能够实现用数据库来保存用户的信息;
- 学会运用好个人资料,以及个人资料的修改功能实现;
- 个人资料包括用户名,昵称,性别,签名,QQ号或个人社交账号的记录等。
数据库的创建
数据库类
该类继承 extends SQLiteOpenHelper
//核心代码
private static final int DB_VERSION = 1;
public static String DB_NAME = "bxg.db";
public static final String U_USER_INFO = "userInfo";
public SQLiteHelper(Context context){super(context, DB_NAME, null, DB_VERSION);
}
@Overridepublic void onCreate(SQLiteDatabase db) {/*** 当这个SQLiteOpenHelper的子类类被实例化时会创建指定名的数据库,在onCreate中创建个人信息表* **/db.execSQL("CREATE TABLE IF NOT EXISTS " + U_USER_INFO + "( "+ "_id INTEGER PRIMARY KEY AUTOINCREMENT, "+ "userName VARCHAR, "+ "nickName VARCHAR, "+ "sex VARCHAR, "+ "signature VARCHAR, "+ "qq VARCHAR "+ ")");
}
/*** 当数据库版本号增加才会调用此方法**/@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {db.execSQL("DROP TABLE IF EXISTS " + U_USER_INFO);onCreate(db);}
创建一个数据库工具类,用于读取、保存、修改用户信息
/**
* 构造方法,只有当类被实例化时候调用
* 实例化SQLiteHelper类,从中得到一个读写的数据库
**/public DBUtils(Context context) {helper = new SQLiteHelper(context);db = helper.getWritableDatabase();}
/**
* 得到这个类的实例
**/
public static DBUtils getInstance(Context context) {if (instance == null) {instance = new DBUtils(context);}return instance;
}
//保存个人资料信息
public void saveUserInfo(UserBean bean) {ContentValues cv = new ContentValues();cv.put("userName", bean.userName);cv.put("nickName", bean.nickName);cv.put("sex", bean.sex);cv.put("signature", bean.signature);cv.put("qq",bean.qq);//Convenience method for inserting a row into the database.//注意,我们是从数据库使用插入方法,传入表名和数据集完成插入db.insert(SQLiteHelper.U_USER_INFO, null, cv);}
//获取个人资料信息
public UserBean getUserInfo(String userName) {String sql = "SELECT * FROM " + SQLiteHelper.U_USER_INFO + " WHERE userName=?";//?和下面数组内元素会逐个替换,可以多条件查询=?and =?//You may include ?s in where clause in the query, which will be replaced by the values from selectionArgs.Cursor cursor = db.rawQuery(sql, new String[]{userName});UserBean bean = null;//Move the cursor to the next row.while (cursor.moveToNext()) {bean = new UserBean();//根据列索引获取对应的数值,因为这里查询结果只有一个,我们也不需要对模型UserBean进行修改,//直接将对应用户名的所有数据从表中动态赋值给beanbean.userName = cursor.getString(cursor.getColumnIndex("userName"));bean.nickName = cursor.getString(cursor.getColumnIndex("nickName"));bean.sex = cursor.getString(cursor.getColumnIndex("sex"));bean.signature = cursor.getString(cursor.getColumnIndex("signature"));bean.qq = cursor.getString(cursor.getColumnIndex("qq"));}cursor.close();return bean;
}
//修改个人资料信息,这里的key指代表字段,value表示数值
public void updateUserInfo(String key, String value, String userName) {ContentValues cv = new ContentValues();cv.put(key, value);//Convenience method for updating rows in the database.db.update(SQLiteHelper.U_USER_INFO, cv, "userName=?", new String[]{userName});
}
嗯,接下来好像没什么了。就这样!大概界面可设计自行设计:
如果觉得不错,那就点个赞吧!❤️
总结
- 本文讲了AndroidStudio制作个人资料界面模块以及SQLite数据库的使用,如果您还有更好地理解,欢迎沟通
- 定位:分享
Android
&Java
知识点,有兴趣可以继续关注
AndroidStudio制作个人资料界面模块以及SQLite数据库的使用相关推荐
- AndroidStudio制作“我”的界面,设置,修改密码,设置密保和找回密码
前言 大家好,我是 Vic,今天给大家带来AndroidStudio制作"我"的界面,设置,修改密码,设置密保和找回密码的概述,希望你们喜欢 学习目标 掌握修改密码功能的开发,和实 ...
- android studio忘记密码界面,AndroidStudio制作“我”的界面,设置,修改密码,设置密保和找回密码...
前言 大家好,我是 Vic,今天给大家带来AndroidStudio制作"我"的界面,设置,修改密码,设置密保和找回密码的概述,希望你们喜欢 学习目标 掌握修改密码功能的开发,和实 ...
- android SQLite数据库的使用
今天,简单讲讲android如何使用SQLite数据库. 最近,自己在做一个功能时又用到了SQLite数据库,发现自己还是掌握的不很全面.其实之前的app里面也一直用到了数据库,但是自己没有花时 ...
- QQ群消息监听并将消息存储到SQLite数据库中
目录 一.前言 二.效果图 1.插件界面 2.SQLite数据库 3.QQ群消息 三.准备工作
- AndroidStudio制作欢迎界面与应用图标,使用Android Studio 3.0.1作为开发工具
点击上方 "黄广达" ,选择 "置顶公众号" 有趣有内涵的文章第一时间送达! 喝酒I创作I分享 生活中总有些东西值得分享 前言 大家好,我是 ...
- AndroidStudio制作欢迎界面与应用图标
前言 大家好,我是 Vic,今天给大家带来AndroidStudio制作欢迎界面与应用图标的概述,希望你们喜欢 欢迎界面与应用图标 本项目使用Android Studio 3.0.1作为开发工具 ac ...
- Android studio实现底部导航,AndroidStudio制作底部导航栏以及用Fragment实现切换功能...
前言 大家好,我是 Vic,今天给大家带来AndroidStudio制作底部导航栏以及用Fragment实现切换功能的概述,希望你们喜欢 学习目标 AndroidStudio制作底部导航栏以及用Fra ...
- xmos固件u8_XMOS USB数字界面 模块 XU208 U8升级版CPL
数字界面 模块 xCORE-200 全新XMOS界面 U8升级版,采用第二代XMOS芯片 XU208 开发的高端USB界面,也是支持固件升级的界面.原理图和固件(包括XMOS和CPLD)都是我们自主开 ...
- 网站制作流程及界面交互设计研究探讨
很多朋友希望,我能把我做网站的一些流程及经验跟大家分享一下,最近刚好做一次内部培训,所以稍微整理了一下,这些只是针对网页初学者,具有一定平面设计水平的人,对HTML不是很了解,这里有很多都是一些我个人 ...
最新文章
- 禁用编译优化_Tomcat8史上最全优化实践
- JAVA SE 学习day_10:集合、聊天室练习最终版
- java 基础安装和Tomcat8配置
- php执行一条insert插入两条数据其中一条乱码
- 看国外女神级程序员,直播写代码一年的感悟
- STN32F103系列IO脚引脚分布
- ROS :为IDE配置环境变量
- 大象的崛起!Hadoop七年发展风雨录
- 第 4 章 容器 - 030 - 实现容器的底层技术
- IOS开发之MapKit框架的使用
- 企业数字化转型之道-企业架构
- 天使之音——Declan Galbraith
- CCNA、CCNP、H3C认证精品视频课程
- [GDC 2015] Scroll Back - 2D 卷轴游戏的摄影机理论与实务
- 学 C 语言,最经典的书有这样几本
- 饭谈:盘点六种错误的技术问题提问
- 如何更新seaborn库_Python 绘图总结(seaborn库的使用) (上)
- 高等数学Mathematica实验题——费马素数猜想(Fn=2^(2^n)+1为素数)的证伪(Verification of Fermat's Prime Number Function)
- confluent-kafka-go依赖库编译体验优化
- 装饰大楼,备用钥匙,IOIOI卡片占卜总结
热门文章
- Direct3D 11在windows7上提示创建d3d设备失败
- linux上数据库账号被锁定,ORA-28000账户被锁和解锁
- ffmpeg截取视频流、rtsp录mp4,与海思NVR,内存问题
- 这些前后端性能指标,面试一问我就懵了
- 百度云管家 提取下载链接(已过时,仅用作存档)
- 【转】获取用户移动方向,指南针原理
- 个人求职简历(.Net)--求广州暑期实习
- 【矩阵论笔记】零化多项式
- JDK的安装与配置(windows环境)
- android 拍摄视频后返回九宫格,抖音九宫格不同视频怎么拍 九个不同的视频在一个画面播放...