Skip to content

luanshiyinyang/Memo

Repository files navigation

一个简单的安卓平台下的备忘录

  • 背景
    • 之前已经介绍了不少的控件(TextView和ListView等等)以及开发中最常见的组件(Activity)(Service的权重在我心中没有Activity重要,因为曾经尝试过没有Activity启动App,这是不可行的,看底层代码就知道启动过程是从Activity开始的)。
    • 基础的知识已经知道了,难免想要上手一个项目,这里开发一个记录备忘录的小项目。该项目,可以说“麻雀虽小,五脏俱全”,除了数据库,网络这方面没有涉及,其他都有应用。由于这是一个纯本地存储的项目,备忘录内容云同步未涉及。(后续考虑添加)
  • 创建一个项目
    • 首先,创建一个新项目(Memo,包名任意),一路默认(安卓入门系列01介绍了)。
    • gradle编译完成后,尝试虚拟机运行。
  • 修改基础配置
    • 看到上面这个界面效果,很难受的就是这个顶部的bar,不需要,我需要自定义的topbar,所以去掉它。(前面博客提到两种方法,这里修改parent)
  • 代码的封装
    • 在我个人的开发经历中,对封装的要求比较高,我不喜欢过多代码的堆砌,尤其是这类业务代码,所以函数或者类,接口的封装在开发过程中是不可或缺的。
    • 首先,写一个常用的topbar,后面多次使用。
    • 这个bar使用的是design包里面的AppBarLayout布局和Toolbar控件,需要添加依赖。
    • 在activity_main.xml添加如下,效果显著。
      •    <FrameLayout
                  adroid:layout_width="match_parent"
                  adroid:layout_height="46dp">
                  <include layout="@layout/topbar"></include>
              </FrameLayout>
  • 具体编码实现界面效果和业务逻辑
    • 这部分本来是想要详细讲述布局和代码实现,包括本地存储的一些基础操作,然而考虑到个人时间和精力,要将即使是这样的一个小项目用文字描述细致,对我而言有些太难了,所以后续的内容只能大致提一下思路,具体的可以到GitHub下载我的源码看。(有详细备注)
  • 开发方法
    • 采用敏捷开发策略
    • 采用快速原型开发方式(优先完成基础功能,再进一步优化)
  • 配置文件
    • 第三方依赖添加
      • 'com.getbase:floatingactionbutton:1.9.0'
        • 浮动窗口
      • 'com.quinny898.library.persistentsearch:library:1.1.0-SNAPSHOT'
        • 搜索框
      • 'com.baoyz.swipemenulistview:library:1.3.0'
  • 不完善之处
    • 本app的开发参考几个开源项目的理念和代码设计
    • 首页每一项之间预先构想的排序,最后由于时间没有实现
    • 本app界面太过平淡
  • 改进之处
    • 国内的很多记事本类型App是没有内部搜索,一般是集成到桌面的搜索功能里,而很多用户不清楚这个设定或者不喜欢,我把这个功能设计在备忘录主页
  • 补充说明
    • GitHub地址
      • 项目的GitHub仓库地址如下,欢迎star或者fork。

About

安卓备忘录

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages