本文实例讲述了Android+SQLite数据库实现的生词记事本功能。分享给大家供大家参考,具体如下:
主activity命名为
Dict:
代码如下:
package example.com.myapplication;import android.app.Activity;import android.content.Intent;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;import java.util.ArrayList;import java.util.HashMap;import java.util.Map;public class Dict extends Activity{ MyDatabaseHelper dbHelper; Button insert = null; Button search = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 创建MyDatabaseHelper对象,指定数据库版本为1,此处使用相对路径即可, // 数据库文件自动会保存在程序的数据文件夹的databases目录下。 dbHelper = new MyDatabaseHelper(this , "myDict.db3" , 1); insert = (Button)findViewById(R.id.insert); search = (Button)findViewById(R.id.search); insert.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View source) { //获取用户输入 String word = ((EditText)findViewById(R.id.word)) .getText().toString(); String detail = ((EditText)findViewById(R.id.detail)) .getText().toString(); //插入生词记录 insertData(dbHelper.getReadableDatabase() , word , detail); //显示提示信息 Toast.makeText(Dict.this, "添加生词成功!" , Toast.LENGTH_SHORT) .show(); } }); search.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View source) { // 获取用户输入 String key = ((EditText) findViewById(R.id.key)).getText() .toString(); // 执行查询 Cursor cursor = dbHelper.getReadableDatabase().rawQuery( "select * from dict where word like ? or detail like ?", new String[]{"%" + key + "%" , "%" + key + "%"}); //创建一个Bundle对象 Bundle data = new Bundle(); data.putSerializable("data", converCursorToList(cursor)); //创建一个Intent Intent intent = new Intent(Dict.this , ResultActivity.class); intent.putExtras(data); //启动Activity startActivity(intent); } }); } protected ArrayList<Map<String ,String>> converCursorToList(Cursor cursor) { ArrayList<Map<String,String>> result = new ArrayList<Map<String ,String>>(); //遍历Cursor结果集 while(cursor.moveToNext()) { //将结果集中的数据存入ArrayList中 Map<String, String> map = new HashMap<String,String>(); //取出查询记录中第2列、第3列的值 map.put("word" , cursor.getString(1)); map.put("detail" , cursor.getString(2)); result.add(map); } return result; } private void insertData(SQLiteDatabase db , String word , String detail) { //执行插入语句 db.execSQL("insert into dict values(null , ? , ?)" , new String[]{word , detail}); } @Override public void onDestroy() { super.onDestroy(); //退出程序时关闭MyDatabaseHelper里的SQLiteDatabase if (dbHelper != null) { dbHelper.close(); } }}
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
软考中级精品资料免费领
- 历年真题答案解析
- 备考技巧名师总结
- 高频考点精准押题
- 资料下载
- 历年真题
193.9 KB下载数265
191.63 KB下载数245
143.91 KB下载数1148
183.71 KB下载数642
644.84 KB下载数2756
相关文章
发现更多好内容猜你喜欢
AI推送时光机Android+SQLite数据库实现的生词记事本功能实例
后端开发2023-05-30
android中listview与SQLite结合如何实现记事本功能
后端开发2023-05-30
Android使用SQLite数据库实现基本的增删改查
后端开发2023-09-15
实例讲解Android App使用自带的SQLite数据库的基本方法
后端开发2022-06-06
Java操作Mongodb数据库实现数据的增删查改功能示例
后端开发2023-05-31
Android开发-使用Realm数据库实现App中的收藏功能
后端开发2022-06-06
Android使用Realm数据库实现App中的收藏功能(代码详解)
后端开发2022-06-06
咦!没有更多了?去看看其它编程学习网 内容吧