基于Java怎样实现一个简单的单词本Android App(android,app,java,开发技术)

时间:2024-05-09 12:07:16 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

布局设计

单词本主界面

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

<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".AddDanciActivity"><EditTextandroid:id="@+id/addword_edit"android:layout_width="match_parent"android:layout_height="60dp"android:layout_marginTop="20dp"android:hint="单词:"android:textColor="@android:color/black"android:textColorHint="#DCDCDC"android:textSize="30dp"/><EditTextandroid:id="@+id/fanyiword_edit"android:layout_width="match_parent"android:layout_height="60dp"android:hint="解释:"android:textColor="@android:color/black"android:textColorHint="#DCDCDC"android:textSize="30dp"/><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_alignParentBottom="true"android:layout_margin="5dp"><ListViewandroid:id="@+id/add_list"android:layout_width="match_parent"android:layout_height="match_parent"android:textColor="@android:color/black"android:textColorHint="#DCDCDC"android:textSize="30dp"android:layout_above="@id/lineLayout"/><LinearLayoutandroid:layout_height="50dp"android:layout_width="match_parent"android:id="@+id/lineLayout"android:layout_alignParentBottom="true"android:orientation="horizontal"android:gravity="center_horizontal"><Buttonandroid:layout_width="100dp"android:layout_height="50dp"android:id="@+id/add_btn"android:text="添加"/><Buttonandroid:layout_width="100dp"android:layout_height="50dp"android:layout_centerHorizontal="true"android:id="@+id/shanchu_btn"android:layout_gravity="center_vertical"android:text="删除"/><Buttonandroid:layout_width="100dp"android:layout_height="50dp"android:id="@+id/quxiao_btn"android:layout_gravity="right"android:text="取消"/></LinearLayout></RelativeLayout></LinearLayout>

代码

AddDanciActivity.java

单词本主界面的Activity

importandroidx.appcompat.app.AppCompatActivity;importandroid.content.ContentValues;importandroid.database.Cursor;importandroid.database.sqlite.SQLiteDatabase;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.Button;importandroid.widget.EditText;importandroid.widget.ListView;importandroid.widget.SimpleAdapter;importandroid.widget.Toast;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.Map;publicclassAddDanciActivityextendsAppCompatActivity{privateEditTextwordedit;privateEditTextyisiedit;privateButtonadd_btn;privateButtonquxiao_btn;privateButtonshanchu_btn;privateListViewlistview;privateDBOpenHelperdbOpenHelper;//声明@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_add_danci);dbOpenHelper=newDBOpenHelper(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(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){Toast.makeText(AddDanciActivity.this,"返回单词本主界面",Toast.LENGTH_SHORT).show();finish();}});shanchu_btn.setOnClickListener(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){Stringword=wordedit.getText().toString();Stringys=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(newView.OnClickListener(){@OverridepublicvoidonClick(Viewv){Stringword=wordedit.getText().toString();Stringys=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();}}});}//插入数据的方法privatevoidinsertData(SQLiteDatabasesqLiteDatabase,Stringword,Stringys){ContentValuesvalues=newContentValues();values.put("word",word);//保存单词values.put("detail",ys);sqLiteDatabase.insert("tb_dict",null,values);//执行插入操作renew();}privatevoiddeleteData(SQLiteDatabasesqLiteDatabase,Stringword){ContentValuesvalues=newContentValues();String[]args={String.valueOf(word)};sqLiteDatabase.delete("tb_dict","word=?",args);//执行删除操作renew();}@OverrideprotectedvoidonDestroy(){super.onDestroy();if(dbOpenHelper!=null){dbOpenHelper.close();//关闭}}publicvoidrenew(){Cursorcursor=dbOpenHelper.getReadableDatabase().query("tb_dict",null,null,null,null,null,null);ArrayList<Map<String,String>>resultList=newArrayList<Map<String,String>>();while(cursor.moveToNext()){Map<String,String>map=newHashMap<String,String>();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{SimpleAdaptersimpleAdapter=newSimpleAdapter(AddDanciActivity.this,resultList,R.layout.item,newString[]{"word","interpret"},newint[]{R.id.textView,R.id.textView2});listview.setAdapter(simpleAdapter);}}@OverrideprotectedvoidonStart(){super.onStart();renew();}}

DBOpenHelper.java

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

importandroid.content.Context;importandroid.database.sqlite.SQLiteDatabase;importandroid.database.sqlite.SQLiteOpenHelper;importandroid.util.Log;importandroidx.annotation.Nullable;publicclassDBOpenHelperextendsSQLiteOpenHelper{finalStringCREATE_TABLE_SQL="createtabletb_dict(_idintegerprimarykeyautoincrement,word,detail)";//定义创建表的publicDBOpenHelper(@NullableContextcontext,@NullableStringname,@NullableSQLiteDatabase.CursorFactoryfactory,intversion){super(context,name,null,version);}@OverridepublicvoidonCreate(SQLiteDatabasedb){db.execSQL(CREATE_TABLE_SQL);//创建单词的数据表}@OverridepublicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){Log.i("词典","--版本更新"+oldVersion+"-->"+newVersion);}}

效果图

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

Java的特点有哪些

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

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:基于Java怎样实现一个简单的单词本Android App的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Java怎样实现经典俄罗斯方块游戏下一篇:

9 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18