Android自定义可标记日历效果

 更新时间:2017年05月20日 14:24:08   作者:genius-x  
这篇文章主要为大家详细介绍了Android自定义可标记日历效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

先直接看看效果吧

初始情况

点击一个作为标记

再次点击后删除

3.这里还要感谢前辈的代码作为参考,毕竟以前也没有写过关于日历方面的东西,别人确实写得不错,我在原基础上加入了数据库操作等补充,以完成自己实际需求,作为尊重首先给出原作者的连接

就是这里–>Android自定义控件实现可多选课程日历CalendarView

4.然后贴出来关于数据库操作的代码,给大家作为参考

DatabaseHelper .java 这是关于简单数据库操作的部分

package com.xugongming38.editcalendar.utils;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * Created by dell on 2017/5/18.
 */

public class DatabaseHelper extends SQLiteOpenHelper {
 public static final String CREATE_DIARY = "create table Hair("
   + "id integer primary key autoincrement, "
   + "content text)";

 private Context mContext;

 public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version){
  super(context, name, factory, version);
  mContext = context;
 }
 @Override
 public void onCreate(SQLiteDatabase db) {
  db.execSQL(CREATE_DIARY);
 }

 @Override
 public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

  db.execSQL("drop table if exists Hair");
  onCreate(db);
 }
}

DataHelper .java 简化数据操作接口,避免直接操作数据库,做了再一层的封装,建议读者也这样做,可以让代码更清晰,更容易复用

package com.xugongming38.editcalendar.utils;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by dell on 2017/5/18.
 */

public class DataHelper {
 public static DatabaseHelper mHelper;
 public static void deleteData2List(String content) {
  SQLiteDatabase dbDelete = mHelper.getWritableDatabase();
  dbDelete.delete("Hair", "content = ?", new String[]{content});

 }
 public static void addData2List(String content) {
  SQLiteDatabase db = mHelper.getWritableDatabase();
  ContentValues values = new ContentValues();

  values.put("content", content);
  db.insert("Hair", null, values);
  values.clear();
 }
 public static List<String> getDataList(Context context) {

  if(mHelper==null){
   mHelper = new DatabaseHelper(context, "Hair.db", null, 1);
  }
  List<String> dataList = new ArrayList<>();

  SQLiteDatabase sqLiteDatabase = mHelper.getWritableDatabase();
  Cursor cursor = sqLiteDatabase.query("Hair", null, null, null, null, null, null);


  if (cursor.moveToFirst()) {
   do {
    String content = cursor.getString(cursor.getColumnIndex("content"));
    dataList.add(content);
   } while (cursor.moveToNext());
  }
  cursor.close();


  return dataList;
 }
}

5.代码完整部分下面给出GitHub地址,欢迎star,水平有限,如有需要,欢迎留言讨论

这是我的github位置–https://github.com/xugongming38/EditCalendar

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

相关文章

  • 简介Android 中的AsyncTask

    简介Android 中的AsyncTask

    AsyncTask是一个很常用的API,尤其异步处理数据并将数据应用到视图的操作场合。接下来通过本文给大家介绍Android 中的AsyncTask,感兴趣的朋友一起学习吧
    2016-03-03
  • 移动端android上line-height不居中的问题的解决

    移动端android上line-height不居中的问题的解决

    现在越来越多的移动界面使用rem适配,最近发现了移动端android上line-height不居中的问题,今日就来介绍一下解决的方法,非常具有实用价值,需要的朋友可以参考下
    2018-03-03
  • Android如何实现扫描和生成二维码

    Android如何实现扫描和生成二维码

    这篇文章主要为大家详细介绍了Android如何实现扫描和生成二维码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • Jetpack Compose布局的使用详细介绍

    Jetpack Compose布局的使用详细介绍

    Jetpack Compose是用于构建原生Android界面的新工具包。它可简化并加快Android上的界面开发,使用更少的代码、强大的工具和直观的 Kotlin API,快速让应用生动而精彩
    2022-09-09
  • Android Activity启动流程刨析

    Android Activity启动流程刨析

    Activity作为Android四大组件之一,他的启动绝对没有那么简单。这里涉及到了系统服务进程,启动过程细节很多,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
    2022-08-08
  • Kotlin的空安全处理方式详解

    Kotlin的空安全处理方式详解

    这篇文章主要为大家介绍了Kotlin的空安全处理方式及空安全的思维方式详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Android树形控件绘制方法

    Android树形控件绘制方法

    这篇文章主要为大家详细介绍了Android树形控件绘制方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • Android自定义控件仿QQ编辑和选取圆形头像

    Android自定义控件仿QQ编辑和选取圆形头像

    这篇文章主要为大家详细介绍了Android自定义控件编辑和选取圆形头像,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • Android Gradle 三方依赖管理详解

    Android Gradle 三方依赖管理详解

    这篇文章主要介绍了Android Gradle 三方依赖管理详解,Gradle的依赖管理是一个从开始接触Android开发就一直伴随着我们的问题,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的朋友可以参考一下
    2022-08-08
  • Android编程实现手机拍照的方法详解

    Android编程实现手机拍照的方法详解

    这篇文章主要介绍了Android编程实现手机拍照的方法,结合实例形式分析了Android实现手机拍照的操作步骤与具体细节,需要的朋友可以参考下
    2016-11-11

最新评论