Android开发:使用AndroidStudio开发记单词APP(带数据库)
一、功能与要求
实现功能:设计与开发记单词系统的四个界面,分别是用户登录、用户注册、单词操作以及忘记密码。
指标要求:通过用户登录、用户注册、单词操作、忘记密码掌握界面设计的基础,其中包括界面布局、常用控件、事件处理等相关内容,通过所学内容设计与开发的界面要求简洁、美观。
二、方案设计
(一)用户登录界面
该界面采用LinearLayout布局,界面中包含整体界面采用线性布局布局方式,界面中包含TextView、EditText、Button等控件,布局设计如下图1所示:
图1 用户登录界面设计
(二) 用户注册界面
该界面采用LinearLayout布局,界面中包含TextView、EditText、Button、RadioGroup、radioButton、toggleButton、checkBox、spinner等控件,布局设计如下图2所示:
图2 用户注册界面设计
(三)单词操作界面
该界面采用…布局,界面中包含textview、TableRow、EditText、Button、TableRow、ListView、RatingBar等控件,布局设计如下图3所示:
图3 单词操作界面设计
(四)忘记密码界面
该界面采用…布局,界面中包含textview、EditText、Button等控件,布局设计如下图4所示:
图4 忘记密码界面
三、项目实现步骤
步骤1:搭建开发环境。
1.创建项目ReadWord
步骤2:准备资源。
2.1 准备好项目所需要的图片
2.2 将图片资源放入到项目的mipmap文件下
步骤3:UI设计与开发。
3.1 使用相对布局等管理器来实现界面的布局
步骤4:编写程序实现业务逻辑。
4.1使用简单的控件和相对布局来实现界面
四、项目实现
(一)用户登录界面
界面如下图5所示:
图5 用户登录界面
布局代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"android:background="@mipmap/bg"tools:context=".Activity.MainActivity"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="50dp"android:layout_marginTop="440dp"android:layout_marginRight="50dp"android:orientation="horizontal"><TextViewandroid:id="@+id/textView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="right"android:text="用户名称:"android:textSize="22sp" /><EditTextandroid:id="@+id/edit_user"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="22sp"android:hint="请输入用户名"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="50dp"android:layout_marginRight="50dp"android:orientation="horizontal"><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="right"android:text="用户密码:"android:textSize="22sp" /><EditTextandroid:id="@+id/edit_pwd"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:maxLines="1"android:textSize="22sp"android:inputType="textPassword"android:hint="输入六位密码" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="35dp"android:layout_marginLeft="50dp"android:layout_marginRight="50dp"android:orientation="horizontal"><Buttonandroid:id="@+id/btn_edpwd"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:layout_marginTop="10dp"android:gravity="right"android:background="#00FFFFFF"android:text="忘记密码?"android:onClick="onClick"android:textColor="#6B6868"android:textSize="18sp" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:layout_marginLeft="50dp"android:layout_marginRight="50dp"android:orientation="horizontal"><Buttonandroid:id="@+id/btn_login"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="登录"android:onClick="onClick"android:textSize="20sp" /><Buttonandroid:id="@+id/btn_register"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="注册"android:onClick="onClick"android:textSize="20sp" /><Buttonandroid:id="@+id/btn_select"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="查询"android:onClick="onClick"android:textSize="20sp" /></LinearLayout>
</LinearLayout>
(二) 用户注册界面
界面如下图6所示:
布局代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"android:gravity="center"android:background="@mipmap/bgs"tools:context=".Activity.RegisterActivity"><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:gravity="center"android:orientation="horizontal"><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="30sp"android:textStyle="bold"android:text="用户信息" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="用户名称:" /><EditTextandroid:id="@+id/editText1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="请输入用户名"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="用户密码:" /><EditTextandroid:id="@+id/editText2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="请输入六位数字"android:inputType="textPassword" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="用户实名:" /><EditTextandroid:id="@+id/editText3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="与身份证保持一致"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:text="性别:" /><RadioGroupandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="horizontal"><RadioButtonandroid:id="@+id/radioButton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:checked="true"android:text="男" /><RadioButtonandroid:id="@+id/radioButton2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="女" /></RadioGroup></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView6"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:text="婚否:" /><ToggleButtonandroid:id="@+id/toggleButton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textOff="未婚"android:textOn="已婚" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView7"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:text="爱好:" /><CheckBoxandroid:id="@+id/checkBox"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="阅读" /><CheckBoxandroid:id="@+id/checkBox2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="游泳" /><CheckBoxandroid:id="@+id/checkBox3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:text="跑步" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView8"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:text="职务:" /><Spinnerandroid:id="@+id/spinner"android:layout_width="match_parent"android:layout_height="wrap_content"android:entries="@array/arrays" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><Buttonandroid:id="@+id/button6"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:onClick="onClick"android:text="取消" /><Buttonandroid:id="@+id/button7"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:onClick="onClick"android:text="注册" /></LinearLayout></LinearLayout>
(三) 单词操作界面
界面如下图7所示:
布局代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"android:background="@mipmap/bgs"tools:context=".Activity.WordOperateActivity"><TableLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"><TableRowandroid:layout_width="match_parent"android:layout_height="600dp"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="30dp"android:layout_weight="1"android:gravity="center"android:orientation="vertical"><TextViewandroid:id="@+id/textView11"android:layout_width="wrap_content"android:layout_height="90dp"android:layout_weight="1"android:gravity="bottom"android:text="单词操作界面"android:textSize="23sp"android:textStyle="bold" /></LinearLayout></TableRow><TableRowandroid:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="130dp"android:layout_marginTop="20dp"android:orientation="vertical"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView12"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="24sp"android:gravity="center"android:text="单词:"android:textStyle="bold" /><EditTextandroid:id="@+id/edit_danci"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:ems="10"android:hint="请输入单词"android:gravity="left"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="match_parent"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView13"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="24sp"android:layout_weight="1"android:gravity="center"android:text="解析:"android:textStyle="bold" /><EditTextandroid:id="@+id/edit_jiexi"android:layout_width="wrap_content"android:ems="10"android:layout_height="wrap_content"android:layout_weight="1"android:gravity="left"android:hint="请输入解析"android:inputType="textPersonName" /></LinearLayout></LinearLayout></TableRow><TableRowandroid:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="horizontal"><Buttonandroid:id="@+id/btn_add"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:onClick="onClick"android:text="添加" /><Buttonandroid:id="@+id/btn_sel"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:onClick="onClick"android:text="查询" /><Buttonandroid:id="@+id/btn_edit"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:onClick="onClick"android:text="更新" /><Buttonandroid:id="@+id/btn_del"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:onClick="onClick"android:text="删除" /></LinearLayout></TableRow><TableRowandroid:layout_width="match_parent"android:layout_height="match_parent" ><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:gravity="center"android:orientation="vertical"><Buttonandroid:id="@+id/btn_selAll"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="查看全部词汇" /></LinearLayout></TableRow><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="vertical"><ListViewandroid:layout_width="match_parent"android:layout_height="200dp"android:id="@+id/list_view"><!-- <TextView-->
<!-- android:id="@+id/textword1"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="Hello"-->
<!-- />-->
<!-- <TextView-->
<!-- android:id="@+id/textjiexi1"-->
<!-- android:layout_width="wrap_content"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:text="你好"-->
<!-- />--></ListView></LinearLayout><TableRowandroid:layout_width="match_parent"android:layout_height="257dp"android:gravity="center"><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><TextViewandroid:id="@+id/textView10"android:layout_width="match_parent"android:layout_height="wrap_content" /></LinearLayout></TableRow><TableRowandroid:layout_width="match_parent"android:layout_height="match_parent" ><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:gravity="center"android:orientation="horizontal"><RatingBarandroid:id="@+id/ratingBar"android:layout_width="wrap_content"android:layout_height="wrap_content" /></LinearLayout></TableRow><TableRowandroid:layout_width="match_parent"android:layout_height="match_parent" ><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_weight="1"android:gravity="center"android:orientation="vertical"><Buttonandroid:id="@+id/button12"android:layout_width="160dp"android:layout_height="wrap_content"android:text="提交评论" /></LinearLayout></TableRow></TableLayout>
</LinearLayout>
(四)忘记密码界面
界面如下图8所示:
布局代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:orientation="vertical"android:gravity="center"android:background="@mipmap/bgs"tools:context=".Activity.EditPwdActivity"><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:gravity="center"android:orientation="horizontal"><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="30sp"android:textStyle="bold"android:text="修改密码" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="用户名称:" /><EditTextandroid:id="@+id/et_user"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="请输入用户名"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="新 密 码 :" /><EditTextandroid:id="@+id/et_pwd"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="请输入六位数字"android:inputType="textPassword" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><TextViewandroid:id="@+id/textView4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="20sp"android:textStyle="bold"android:text="确认密码:" /><EditTextandroid:id="@+id/et_pwd2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:ems="10"android:hint="与新密码相同"android:inputType="textPersonName" /></LinearLayout><LinearLayoutandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="horizontal"><Buttonandroid:id="@+id/btn_update"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_weight="1"android:textSize="20sp"android:textStyle="bold"android:onClick="onClick"android:text="确认修改" /></LinearLayout></LinearLayout>
五、项目总结
通过该项目的设计,掌握Android项目设计开发流程,完成了一款记单词软件,UI布局界面使用了很多控件,使我掌握了TextView、EditText、Button、ratingBar、RadioGroup、radioButton、toggleButton、checkBox、spinner等控件的使用、后台使用了AlertDialog实现了注册按钮弹出对话框。此次项目设计不仅仅使对我技术上的锻炼有所提高,更多的是为我之后的学习奠定了良好的基础,但是依然有很多的不足之处需要我们继续完善和改正。
Android开发:使用AndroidStudio开发记单词APP(带数据库)相关推荐
- 基于Android实现之智慧记单词APP【100011028】
一.绪论 1.1 设计背景 随着经济全球化,我们与外国人的接触越来越多,英语已经成为了中国与外面交流的主要工具,同时我国的英语教育也开始普及到了小学,人们对学习英语越来越重视.而对于学习英语特别是英语 ...
- Android开发学习——记单词APP安卓注册登录跳转
登陆页面XML <?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayo ...
- (基于安卓app开发项目)英语学习记单词软件的毕业设计(java+j2ee+mysql)(附源码)
大家好!我是岛上程序猿,感谢您阅读本文,欢迎一键三连哦.
- 基于Android+Python Flask框架实现的智慧记单词APP设计
文档+前后台源码 摘 要 调查显示,我国的年轻人平均每天解锁屏幕35次,在解锁屏幕时背单词可以有效利用琐碎时间.本APP可以让用户通过对锁屏界面单词的拼写和发音来进行中文选词达到记忆单词的目的,当用户 ...
- 用android studio写一个简单的记单词?????App
一个贼贼简单的APP,按照前端来说,就只是实现了几个页面跳转和点击事件,数据库链接都没用到.就这么几个简单的页面和跳转,各位见笑了. 看一下效果吧: 页面设计(activity_main): < ...
- android filehelper,为AndroidStudio开发mvp插件(MvpHelper)
如果觉得写mvp有点枯燥无味,我们可以做点 cool 的事情:做个 as 插件 help.png todo-mvp: 基础的MVP架构. todo-mvp-loaders:基于MVP架构的实现,在获取 ...
- android 广播单词锁屏,[android]利用碎片化时间记单词———单词锁屏
平时有很多碎片化的时间,如果我们可以利用起来,那么一定可以收到很多的效果.例如我们经常会点亮屏幕,如果在这时记一两个单词,是不是非常不错呢. 单词锁屏就是一款这样的应用.可以设置各种级别的单词如四级. ...
- 自编记单词小程序项目(自定义词库,多功能)C/C++语言实现
一款方便实用又简洁的记单词小程序,自定义单词库,多功能协助记忆!!! github地址:https://github.com/Knock-man/Memorizing-words-program 如今 ...
- 基于AndroidStudio+Java+SQLite开发的背单词APP系统
目 录 第一章 绪论 1 1.1 选题设计开发的应用背景及价值 1 1.2 选题的研究现状 1 1.3 关于本课题 2 第二章 开发环境与主要技术 3 2.1 开发平台 3 2.2 主要技术 4 2. ...
最新文章
- python模块学习---mechanize(模拟浏览器)
- locate和find命令
- GitHub发布开源项目指南,以帮助更多开发者参与开源
- mac下androidStudio 运行模拟器出现:
- 计算机学院考勤管理办法,计科学院进一步加强课堂考勤实施意见(试行)
- [react] 在React中你有经常使用常量吗?
- 每日签到html特效,前端这种连续签到的效果要怎么写
- JVM面试1 :谈谈你对Java的理解
- .condarc(conda 配置文件)、换国内源
- shutil模块拷贝与解压缩模块----day19
- Spotfire 常用数据类型
- Android游戏破解 入门级零基础起步学习破解!MT管理器+修改器使用方法 小白看了绝对有用
- 程序猿怎样变身IT讲师
- 曙光服务器bios开启vt虚拟化,VT开启教程 BIOS开启VT方法
- python实训报告怎么写_python实验报告
- 十七、面相对象的进阶
- 《安全评估报告》7条回答范例
- 最全长文详述“数字人民币简史”,揭开数字人民币神秘面纱
- 模板匹配、抓圆、抓边、二维码 零基础labview视觉培训教程《龙哥手把手教你学视觉》只有不会教的老师,没有学不会的学生
- 白鹭(egret)引擎安装及使用