千家信息网

基于Java怎样实现一个简单的单词本Android App

发表于:2025-02-22 作者:千家信息网编辑
千家信息网最后更新 2025年02月22日,这篇文章跟大家分析一下"基于Java怎样实现一个简单的单词本Android App"。内容详细易懂,对"基于Java怎样实现一个简单的单词本Android App"感兴趣的朋友可以跟着小编的思路慢慢深
千家信息网最后更新 2025年02月22日基于Java怎样实现一个简单的单词本Android App

这篇文章跟大家分析一下"基于Java怎样实现一个简单的单词本Android App"。内容详细易懂,对"基于Java怎样实现一个简单的单词本Android App"感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下,希望阅读后能够对大家有所帮助。下面跟着小编一起深入学习"基于Java怎样实现一个简单的单词本Android App"的知识吧。

布局设计

单词本主界面

                                    

代码

AddDanciActivity.java

单词本主界面的Activity

import androidx.appcompat.app.AppCompatActivity;import android.content.ContentValues;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.ListView;import android.widget.SimpleAdapter;import android.widget.Toast;import java.util.ArrayList;import java.util.HashMap;import java.util.Map; public class AddDanciActivity extends AppCompatActivity {     private EditText wordedit;    private EditText yisiedit;    private Button add_btn;    private Button quxiao_btn;    private Button shanchu_btn;    private ListView listview;    private DBOpenHelper dbOpenHelper;//声明     @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_add_danci);        dbOpenHelper = new DBOpenHelper(AddDanciActivity.this, "db_dict", null, 1);//实例化,创建数据库        wordedit = (EditText) findViewById(R.id.addword_edit);        yisiedit = (EditText) findViewById(R.id.fanyiword_edit);        listview = (ListView) findViewById(R.id.add_list);        add_btn = (Button) findViewById(R.id.add_btn);        quxiao_btn = (Button) findViewById(R.id.quxiao_btn);        shanchu_btn = (Button) findViewById(R.id.shanchu_btn);        quxiao_btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Toast.makeText(AddDanciActivity.this, "返回单词本主界面", Toast.LENGTH_SHORT).show();                finish();            }        });         shanchu_btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                String word = wordedit.getText().toString();                String ys = yisiedit.getText().toString();                if (word.equals("")) {                    Toast.makeText(AddDanciActivity.this, "填写的单词为空", Toast.LENGTH_SHORT).show();                } else {                    deleteData(dbOpenHelper.getReadableDatabase(), word);                    Toast.makeText(AddDanciActivity.this, "删除成功", Toast.LENGTH_SHORT).show();                }            }        });         add_btn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                String word = wordedit.getText().toString();                String ys = yisiedit.getText().toString();                if (word.equals("") || ys.equals("")) {                    Toast.makeText(AddDanciActivity.this, "填写的单词或解释为空", Toast.LENGTH_SHORT).show();                } else {                    insertData(dbOpenHelper.getReadableDatabase(), word, ys);//插入生词                    Toast.makeText(AddDanciActivity.this, "添加生词成功", Toast.LENGTH_SHORT).show();                    renew();                }            }        });    }     //插入数据的方法    private void insertData(SQLiteDatabase sqLiteDatabase, String word, String ys) {        ContentValues values = new ContentValues();        values.put("word", word);//保存单词        values.put("detail", ys);        sqLiteDatabase.insert("tb_dict", null, values);//执行插入操作        renew();    }     private void deleteData(SQLiteDatabase sqLiteDatabase, String word) {        ContentValues values = new ContentValues();        String[] args = {String.valueOf(word)};        sqLiteDatabase.delete("tb_dict", "word=?", args);//执行删除操作        renew();    }      @Override    protected void onDestroy() {        super.onDestroy();        if (dbOpenHelper != null) {            dbOpenHelper.close();//关闭        }    }     public void renew() {        Cursor cursor = dbOpenHelper.getReadableDatabase().query("tb_dict", null, null, null, null, null, null);        ArrayList> resultList = new ArrayList>();        while (cursor.moveToNext()) {            Map map = new HashMap();            map.put("word", cursor.getString(1));            map.put("interpret", cursor.getString(2));            resultList.add(map);        }         if (resultList == null || resultList.size() == 0) {            Toast.makeText(AddDanciActivity.this, "很遗憾,没有相关记录!", Toast.LENGTH_SHORT).show();        } else {            SimpleAdapter simpleAdapter = new SimpleAdapter(AddDanciActivity.this, resultList, R.layout.item, new String[]{"word", "interpret"            }, new int[]{R.id.textView, R.id.textView2});            listview.setAdapter(simpleAdapter);        }    }     @Override    protected void onStart() {        super.onStart();        renew();    }}

DBOpenHelper.java

用到的是SQLite数据库,Android自带了一种轻量级数据库,使用非常方便。

import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;import android.util.Log;import androidx.annotation.Nullable; public class DBOpenHelper extends SQLiteOpenHelper {     final String CREATE_TABLE_SQL = "create table tb_dict (_id integer primary key autoincrement,word,detail)";//定义创建表的     public DBOpenHelper(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {        super(context, name, null, version);    }     @Override    public void onCreate(SQLiteDatabase db) {        db.execSQL(CREATE_TABLE_SQL);//创建单词的数据表    }     @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {        Log.i("词典", "--版本更新" + oldVersion + "-->" + newVersion);    }}

效果图

Java的特点有哪些

Java的特点有哪些 1.Java语言作为静态面向对象编程语言的代表,实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 2.Java具有简单性、面向对象、分布式、安全性、平台独立与可移植性、动态性等特点。 3.使用Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。

关于基于Java怎样实现一个简单的单词本Android App就分享到这里啦,希望上述内容能够让大家有所提升。如果想要学习更多知识,请大家多多留意小编的更新。谢谢大家关注一下网站!

单词 数据 程序 对象 应用程序 数据库 本主 特点 界面 应用 成功 内容 分布式 生词 知识 系统 语言 跟着 学习 更新 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海学生网络技术开发常见问题 安装数据库卡住 sql用脚本建数据库实例 软件开发时间代码 实时公交数据库网站 广东推广软件开发 数据网络安全论文 计算机系统与网络技术课后答案 开发方案怎么写数据库 江西服务器维修技术云空间 首都网络安全宣传日口号 软件开发费用测算方法 网络技术与应用起源于 数据库乐观锁出现回滚问题 计算机网络技术三大结构 行为管理网关和服务器连接不上 数据库关闭后能通过代码访问么 马桶c的外国服务器 供热系统网络安全事件 数据库统计表内数据不完整率 南京食堂配送软件开发 中小学网络安全教育图片大全 宝山区网络软件开发定制要求 csgo封安全服务器 dhcp和dns服务器联系 校园网络安全体系建设方案 关于网络安全的连环漫画 王思聪新服务器处理器价值13万 宝山区咨询软件开发厂家信息中心 江西服务器虚拟化安装
0