教育管理系统——android家长客户端

  最近作了一个android的小项目,服务器端已经搭建好了,使用了spring MVC做为后端技术,发布了一系列web接口来接受客户端提交的数据和返回客户端请求的数据,web端使用了ext js来做为前端技术。同时还须要一个android客户端和ios客户端,临时先开发了一个android客户端,由于服务器端接口已经写好了,安卓端这边只须要访问这些接口就能够获取须要展现的数据和提交数据便可,开发难度不大。由于时间比较紧迫,因此没有作详细的设计,致使后来有不少其实比较冗余的代码,其实能够经过良好的设计来减小代码量,作好继承就能够了,这一点是一个教训,之后在进行面向对象的开发时须要注意。另外也没有作缓存机制的设计,也就是说应用所需的全部数据都是在用户请求时去服务器端获取的,本地不会保存数据,这样作减小了逻辑的复杂度,有利于开发速度。可是之后须要缓冲机制的话改动可能比较大。前端

  下面简单描述一下这个应用的逻辑流程,首先用户必需要进行登陆验证才能够进入应用,这样作的目的是减小业务逻辑的复杂性。当用户验证成功进入应用后,会展示给用户三个tab,分别是新闻通知tab,mytab,message tab,其中新闻通知是用来展现学校发布的各类新闻和通知,my tab是用来提供用户查询各类信息的地方,message是用来查看和发送站内信给老师的地方。下面对这里面用到的各个组件或者机制进行一下描述。java

  Thread与Handler:当用户进行登陆验证或者其它须要链接网络的操做时,都须要使用thread,在thread中使用httpclient来进行网络链接,当获取到服务器传输来的数据并进行处理后,网络线程经过handler机制来与开启网络线程的线程进行数据同步的工做,handler通常是做为主线程中的对象传递给thread的,所以在handler中能够对主线程中的ui进行处理等工做。在java中,一切都是对象,thread也是,thread中有一个run函数是线程开始后所执行的函数,当在主线程中new出一个thread后,须要调用start这个函数后线程才会执行。android

  fragment:如今的应用,ui愈来愈复杂,原来单纯的在activity中构建ui变得不太灵活,如今安卓中引入了fragment机制,一个activity中可使用多个fragment来构建ui界面,这样在一个activity的生命周期中就能够方便的构建复杂的ui界面而不须要切换activity。相似于activity中的oncreate方法,fragment中的oncreateview负责fragment初始化时的主要工做,此方法返回一个此fragment的view给activity,fragment也使用布局文件来初始化界面,使用inflater的inflate方法来初始化界面。ios

  listview:本应用中主要使用listview控件来展现数据信息,多个listitem来构造一个listview,listitem界面可使用布局文件来定义,同时listview有一个addheader方法,能够在listview头部添加一个view来显示在listview的头部。同时,listview能够实现onscrolllistener接口,来实现listview拖动的效果。web

  adapter:适配器,相似于listview这样的控件,须要适配器来填充数据,适配器通常会和一个list数据结构绑定,安卓系统会根据list的大小来构建listitem的数目和内容。spring

  这里描述的四个控件都是安卓应用中比较重要的四个控件,这里只是简单描述,具体的内容比这里描述的更复杂,有时间的话再仔细描述一下这四个控件的具体用法。后端

相关文章
相关标签/搜索