您的位置:首页技术文章
文章详情页

Android实现简易记事本

【字号: 日期:2022-09-23 10:49:59浏览:7作者:猪猪

本文实例为大家分享了Android实现简易记事本的具体代码,供大家参考,具体内容如下

下面实现了一个简易的记事本,效果如下:

Android实现简易记事本

Android实现简易记事本

主要使用数据库存储数据。

完整代码链接:Android实现简易记事本

下面是部分代码:

MainActivity:

public class MainActivity extends AppCompatActivity implements View.OnClickListener { private EditText subject; private EditText body; private EditText date; private Button chooseDate; private Button add; private Button query; private ListView result; private LinearLayout title; private MyDataBaseHelper mMyDataBaseHelper; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); } private void initView() { //控件初始化 subject=(EditText)findViewById(R.id.subject); body=(EditText)findViewById(R.id.body); date=(EditText)findViewById(R.id.date); chooseDate=(Button)findViewById(R.id.chooseDate); add=(Button)findViewById(R.id.add); query=(Button)findViewById(R.id.query); result=(ListView)findViewById(R.id.result); title=(LinearLayout)findViewById(R.id.title); //选择日期,添加,查询的监听事件 chooseDate.setOnClickListener(this); add.setOnClickListener(this); query.setOnClickListener(this); //查询情况默认隐藏,只有点击查询时才有效果 title.setVisibility(View.INVISIBLE); } @Override public void onClick(View v) { //创建数据库 mMyDataBaseHelper=new MyDataBaseHelper(MainActivity.this,'memento.db',null,1); SQLiteDatabase sqLiteDatabase=mMyDataBaseHelper.getReadableDatabase(); //获取输入框的内容 String strSubject=subject.getText().toString().trim(); String strBody=body.getText().toString().trim(); String strDate=date.getText().toString().trim(); switch (v.getId()){ case R.id.chooseDate: Calendar calendar=Calendar.getInstance(); //选择时间,并将时间设置在date中 new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) { date.setText(year+'-'+month+'-'+dayOfMonth); } },calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH)).show(); break; case R.id.add: //添加内容到数据库中,添加方法是add title.setVisibility(View.INVISIBLE); add(sqLiteDatabase,strSubject,strBody,strDate); Toast.makeText(this, 'success!', Toast.LENGTH_SHORT).show(); result.setAdapter(null); break; case R.id.query: //查询时显示结果设置为visible title.setVisibility(View.VISIBLE); //查询的结果保存在cursor中 Cursor cursor=query(sqLiteDatabase,strSubject,strBody,strDate); SimpleCursorAdapter simpleCursorAdapter=new SimpleCursorAdapter(MainActivity.this,R.layout.result,cursor,new String[]{'_id', 'subject', 'body', 'date'}, new int[]{R.id.memento_num, R.id.memento_subject, R.id.memento_body, R.id.memento_date}); //为listview添加适配器 result.setAdapter(simpleCursorAdapter); break; } } //添加数据到数据库中的方法 public void add(SQLiteDatabase sqLiteDatabase,String subject,String body,String date){ sqLiteDatabase.execSQL('Insert into memento_tb values(null,?,?,?)',new String[]{subject,body,date}); //初始设置为空 this.subject.setText(''); this.body.setText(''); this.date.setText(''); } //查询的方法,返回值为cursor public Cursor query(SQLiteDatabase sqLiteDatabase, String subject, String body, String date){ Cursor cursor = sqLiteDatabase.rawQuery( 'select * from memento_tb where subject like ? and body like ? and date like ? ', new String[]{'%' + subject + '%', '%' + body + '%', '%' + date + '%'});//对表的查询(insert的操作) return cursor; } protected void onDestroy() { super.onDestroy(); if (mMyDataBaseHelper != null) { mMyDataBaseHelper.close(); } }}

MyDataBaseHelper:

public class MyDataBaseHelper extends SQLiteOpenHelper { //创建数据库的语句 final String CREATE_TABLE_SQL = 'create table memento_tb(_id integer primary ' + 'key autoincrement,subject,body,date)'; //建表 public MyDataBaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) { super(context, name, factory, version); } //执行建表的操作 @Override public void onCreate(SQLiteDatabase db) { db.execSQL(CREATE_TABLE_SQL); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { System.out.println('---------' + oldVersion + '------->' + newVersion); }}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持好吧啦网。

标签: Android
相关文章: