| 说实话,代码写得并不怎么样,开始的时候只是写着玩玩,在随后的过程中,不断根据大家的反馈,慢慢添加了更多的功能,然而,一开始的代码结构并不适合扩展,因此,代码改到最后是乱七八糟了,维护起来比较痛苦,所以,才放弃了在现有代码上继续扩展的打算。 如果要说学习,代码结构是大可不必的了,估计能给大家一些帮助的是如何处理点阵字库(似乎很多人都问过我),如何发送短信等。我对整个程序的代码作了一些简单的解释,当然,如果对某个代码提问的人比较多,我会不断更新下面的说明文档的。 代码下载 | |
| AnyView.java | |
| 从MIDlet继承,程序的入口 其中处理了用户环境的检测、加载阅读记录、用户自定义的界面样式 | |
| IAVReader.java | |
| 处理.iav格式文件的逻辑 | |
| IAVReaderCanvas.java | |
| 负责显示.iav格式的文件 | |
| SplashCanvas.java | |
| 欢迎屏幕,并且显示操作菜单 | |
| Message.java | |
| 在用户的屏幕上显示一条提示信息 | |
| Progress.java | |
| “自由跳转”功能所使用的操作窗口 | |
| CustomFont.java | |
| 点阵字库处理的代码 | |
| FileSelector.java | |
| “打开文件”的窗口 | |
| Search.java | |
| “搜索”功能的界面 由于无法在Canvas下完成用户输入,因此该类从Form继承 | |
| Menu.java | |
| 菜单窗口的抽象类 String[] items表示菜单中包括的选项 public int getSelectedIndex()返回当前用户所选择的选择支 | |
| FileSystemReader.java | |
| 将MotoIO对本地文件操作的类进行封装,在此,重写了一个public void skip(int len)方法,由于在真机上的read()表现远远快于skip(),所以,skip(int len)会调用fastSkip(int len)方法 | |
| TxtLine.java | |
| 保存每一行的信息 offest: 此行在文件中的偏移位置 lenght: 此长的长度 | |
| Selector.java | |
| 一个抽象的选择类,主要是用来选择字体等,与Menu略有不同 | |
| TXTReaderCanvas.java | |
| 阅读文本文件的Canvas | |
| SMSSender.java | |
| 在后台发送短信 | |
| KeyActionListener.java | |
| 定义了一些常用按键操作 | |
| Record.java | |
| 封装过的对RMS操作的类 | |
| SMSPhone.java | |
| 对短信进行分割,并提示用户输入目的手机号以便发送短信 | |
| AbstractWindow.java | |
| 定义了一个抽象的窗口类,处理一些常用的操作及定义界面属性 | |
| Mark.java | |
| 书签的定义,只定义一个阅读点 | |
| SMSText.java | |
| 短信的文字处理 | |
| ColorSelector.java | |
| 颜色选择 | |
| BookMark.java | |
| 对于一个TXT文件来说,只存在一个BookMark,一个BookMark可以包含0个或多个Mark,其中,最后一个Mark仅用来记录用户最后的阅读位置,并不是实际意义上的书签 |