千家信息网

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

发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章跟大家分析一下"基于Java怎样实现一个简单的单词本Android App"。内容详细易懂,对"基于Java怎样实现一个简单的单词本Android App"感兴趣的朋友可以跟着小编的思路慢慢深
千家信息网最后更新 2025年01月19日基于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安全错误 数据库的锁怎样保障安全 hbase后端图数据库 百丽公司网络安全架构师待遇 mcgs实时数据库的作用是什么 国家网络安全宣传周贵州电信 我国互联网的网络安全形势 查看数据库回滚指令 奉贤区一站式软件开发欢迎咨询 网络安全技术交流大会 白银网络安全工程师职业资格证书 斐讯网络安全密钥忘了 数据库 精品课程网站 青海租赁gpu服务器公司 数字签名服务器与电子签章系统 我的世界基岩版电脑版服务器推荐 软件开发工程师推荐 b站土豆服务器 龙岩青少年网络安全 软件开发公司的税率 javq读取数据库用什么 软件开发项目经理讲标 如何攻打服务器 第三代网络安全问题 杭州电脑软件开发费用 鄂尔多斯市恒新鸿业网络技术 宾馆网络安全检查表 苏州智能刀片服务器哪家好 什么叫您的网络无法连接到服务器 安徽计算机应用软件开发哪家好 软件开发行业还有前途吗 泰坦陨落服务器抽风
0