Android Studio--家庭记账本(五)
2020-06-13 16:03
267 查看
钉钉、微博极速扩容黑科技,点击观看阿里云弹性计算年度发布会!>>>
想到每次删除之后将表单自动初始化,却发现会导致除去已经删除的不在出现在表单上,数据库中剩余的数据还会再次出现在表单中。导致表单上的数据越来越多。后来又想到,当我实现删除之后,把表单采用全部清除,再重新初始化。果然这个方法实现了完整的删除与自动更新功能。
public void onClick(DialogInterface dialog, int which) { CostBean costBean =new CostBean(); costBean.costTitle=title.getText().toString();//将用户输入的删除标题“cost_title”传给costbean.title mDatabaseHelper.deleteCost(costBean);//删除数据库中数据 mCostBeanList.clear();//清除表单 initCostData();//重新从数据库中初始化表单的数据 mAdapter.notifyDataSetChanged();//刷新表单 }
SQLite数据库删除代码:
public void deleteCost(CostBean costBean){ SQLiteDatabase database=getWritableDatabase();//接受costbean的数据 database.delete(TABLE,"cost_title=?",new String[]{costBean.costTitle});
//删除表“TABLE”中“cost_title”为new String[]{costBean.costTitle}的数据,即前面传来的cost_title
}
将收入与支出分开来记,但是都存储在同一数据库中了,就是简单的两个button,在金额前面加上了“+”、“-”
同时又增加了清除账单的功能,即将数据库中的数据全部清除,当点击清除表单的时候,会跳出对话框,让用户确认是否全部删除。
Button btn_delete_all =findViewById(R.id.btn_delete_all); btn_delete_all.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { AlertDialog.Builder builder=new AlertDialog.Builder(MainActivity.this); builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { mDatabaseHelper.deleteAllData();//需要用到sqlite语句 mCostBeanList.clear();//清除表单 mAdapter.notifyDataSetChanged(); } }); builder.setNegativeButton("取消",null); builder.setMessage("确定要清除所有账单吗?"); builder.setTitle("提示"); builder.create().show(); } });
DatabaseHelper.java里面删除数据库中TABLE
public void deleteAllData(){ SQLiteDatabase database=getWritableDatabase(); database.delete(TABLE,null,null); }
相关文章推荐
- [Android Studio] Android Studio移除的Module如何恢复(转载)
- Android Studio 初探
- Android基础(3)——Android Studio模拟器Genymotion
- 注: 某些输入文件使用或覆盖了已过时的 API。 android studio
- Android Studio如何下载NDK及使用新的Gradle构建工具配置NDK环境
- android studio执行 Information:Gradle tasks [:app:assembleDebug]失败处理
- android studio 将引用第三方jar和.so的项目打包jar并混淆
- Android Studio快捷键
- [Android Studio] Android Studio如何快速生成get,set,tostring,构造函数
- 关于Android Studio 出现Unrecognized Windows Sockets error: 10107: Socket creation failed解决办法
- Android Studio 新建drawable-hdpi、drawable-mdpi等
- 使用Android Studio进行单元测试
- android studio 免费实现聊天视频功能
- Android Studio混淆打包
- Mac版Android studio中使用lambda表达式设置jdk版本问题
- Android Studio-Gradle项目中添加JNI生成文件(.so文件)
- Android Studio(十一):代码混淆及打包apk
- Android Studio 中文件查询方法总结
- android studio -build
- Android Studio 无线真机调试