android软件简约记账app开发day06-将记账条目添加到数据库并且绘制备注页面
2024-08-31 22:33:18
android软件简约记账app开发day06-将记账条目添加到数据库并且绘制备注页面
首先写添加到数据库
在DBOpenHelper中添加创建记账表的语句
//创建记账表
sql = "create table accounttb(id integer primary key autoincrement,typename varchar(10),sImageId integer,beizhu varchar(80),money float," +
"time varchar(60),year integer,month integer,day integer,kind integer)";
db.execSQL(sql);
在数据库管理类中添加保存方法
/*
* 向记账表当中插入一条元素
* */
public static void insertItemToAccounttb(AccountBean bean){
ContentValues values = new ContentValues();
values.put("typename",bean.getTypename());
values.put("sImageId",bean.getsImageId());
values.put("beizhu",bean.getBeizhu());
values.put("money",bean.getMoney());
values.put("time",bean.getTime());
values.put("year",bean.getYear());
values.put("month",bean.getMonth());
values.put("day",bean.getDay());
values.put("kind",bean.getKind());
db.insert("accounttb",null,values);
}
我们在baseFragment类中写一个保存到数据库的方法,为了方便继承实现,定义成抽象方法,并且把该类改为抽象类。
/**
* 将数据保存到数据库,因为收入支出保存不同,所以我们封装成抽象类,抽象方法。
*/
public abstract void saveAccountToDB();
分别在子类中重写
@Override
public void saveAccountToDB() {
accountBean.setKind(1);
DBManager.insertItemToAccounttb(accountBean);
}
@Override
public void saveAccountToDB() {
accountBean.setKind(0);
DBManager.insertItemToAccounttb(accountBean);
}
绘制备注界面
我们在点击备注时,要弹出界面,我们今天只画一下该界面
新建dialog_beizhu.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="wrap_content"
android:padding="10dp"
android:background="@color/white">
<TextView
android:id="@+id/dialog_beizhu_tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/add_remark"
android:textSize="16sp"
android:textColor="@color/black"/>
<EditText
android:id="@+id/dialog_beizhu_et"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/dialog_beizhu_tv"
android:hint="@string/remark"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
android:textSize="14sp"
android:background="@color/white">
<requestFocus/>
</EditText>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_below="@id/dialog_beizhu_et"
android:padding="10dp">
<Button
android:id="@+id/dialog_beizhu_btn_cancel"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/cancel"
android:background="@drawable/dialog_btn_bg"
android:textStyle="bold"
android:textColor="@color/green_006400"
android:layout_marginRight="5dp"/>
<Button
android:id="@+id/dialog_beizhu_btn_ensure"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/ensure"
android:background="@drawable/main_recordbtn_bg"
android:textStyle="bold"
android:textColor="@color/white"
android:layout_marginRight="5dp"/>
</LinearLayout>
</RelativeLayout>
在drawable中添加drawable文件
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 四个角设定弧度-->
<corners android:radius="20dp"/>
<!-- 填充颜色-->
<solid android:color="@color/white"/>
<stroke android:color="@color/green_006400" android:width="3dp"/>
</shape>
在strings.xml中添加变量
<string name="add_remark">添加备注</string>
<string name="remark">备注</string>
<string name="ensure">确定</string>
<string name="cancel">取消</string>
效果图:
今天的内容比较简单,我们明天见。
最新文章
- Android SDK Manager中不显示未下载的api解决方案
- Android 采用Layout Inflater创建一个View对象
- thinkphp 行为扩展以及插件机制介绍
- bzoj4562: [Haoi2016]食物链--记忆化搜索
- asp.net mvc中包含webapi时,token失效产生302的解决方案
- Project Euler 96:Su Doku 数独
- 各开源协议BSD,GPL,LGPL,Apache 2.0,mit等简介*
- GUI编程笔记(java)05:GUI事件监听机制原理和举例说明
- Android 有缓存功能的请求封装接口
- Error occured processing XML &;#39;Cannot find class [springmvc.extention.BeanArgumentResolver]&;#39;.
- js中的回调函数的理解
- create-react-app创建的项目中registerServiceWorker.js文件的作用
- &#39;QueryDict&#39; object is not callable 错误解析
- 11 week blog
- 斯巴达克斯诅咒者之战第三季/全集Spartacus迅雷下载
- 【Java】java运行jar时,报 java.lang.UnsupportedClassVersionError
- webstorm忽略node_modules目录
- November 25th 2016 Week 48th Friday
- 10个步骤让你成为高效的Web开发者
- 求子数组的最大和要求O(n)
热门文章
- 4月2日 python学习总结
- 【文件系统】dumpe2fs命令
- [SPDK/NVMe存储技术分析]006 - 内存屏障(MB)
- centOS 7 离线安装 MySQL 5.6 完美安装
- Discuz!X系列全版本后台sql注入复现
- OO第一单元
- Oacle 插入多条记录的语法理解;INSERT ALL INTO ....... SELECT 1 FROM dual;
- 本地连接MySQL云服务器步骤与解决方案
- SpringAOP+RabbitMQ+WebSocket实战
- 插值方法 - Lagrange插值多项式