先说下我的想法,不知道是我没有找到还是怎么的,貌似没有看到什么比较有名的Android框架,因为大部分Android应用都有着相同的实现需求,网络请求啦,文件操作啦之类的。自己也写了几个项目,但每次有些基础底层的类都要重新写一遍,虽然每次写都有新的启发,但还是重复造了好多轮子了,所以我就想,为什么不写一个常用类的集合,封装好,打包成jar文件(打包成jar文件是收到了cocos2d的启发,原来那么多类打包成一个文件引用就好了,太方便了!),以后用的时候就各种调用就好了。
然后我就构思了一个看上去很碉堡的名字“XAndroid”,一开始还想用英文写注释,不过后来觉得用英文写的话,以后方法多了都不太好理解了(其实就是自己英语太蹩脚吧)。
好,开头就写这么多了,其实已经写好几个类了。先大致的列下出来。
org.xandroid.component //这个类就是想存放扩展后的Activity,Service之类的
XActivity //这个类就是扩展了下Activity,加上了一些好用的方法
org.xandroid.i //这个包打算用来放接口的,但现在还什么都没有
org.xandroid.util //这个包里面就有很多常用的类啦
X //这个类是一个常量库,里面有点类似于R.java文件那种感觉,自定义了一些常量
XRequestHelper //这个类是用于发送网络请求的类,还不完善
XSpHelper //SharedPreference助手类
XToastHelper //弹出Toast的助手类,里面就两个静态方法
目前就这么多类了,以后会慢慢添加。也慢慢的改进自己的设计吧。
遇到的问题:java代码中写好的一大堆注释,但是导出jar包之后再调用里面的方法,鼠标放上去就木有注释了,非常的郁闷啊。
解决办法:后来我发现在导出jar包的时候,同时把源文件也导出就OK了。
遇到的问题:java代码注释可以看到了,但是发现确实乱码,我仔细检查了框架代码的编码和项目代码的编码,都是utf-8。
解决办法:在Window->Preferences->General->Workspace的选项卡中,左下角有个编码设置,也改为UTF-8即可解决。
<!--2014-3-27 23:10:37更新-->
一开始想写一个类似于微信那种加载的时候转圈的对话框类,但发现实现起来有问题,不管里面的内容多窄,它(DialogFragment)一直都有那么宽,搞得很郁闷,所以删掉就没写了。
准备做一个网络请求,但考虑到每次按按钮都需要做是否有可用网络的判断,于是就想,写一个自动检测网络状态的线程类,就可以了。今天添加了如下两个类,
org.xandroid.thread.XNetThread
org.xandroid.util.XNetStateHelper
org.xandroid.exception.XNoAvailableNetworkException
画了点时间画类图,不是很专业,只要清晰好看就行了。
<!-- 2014-3-31 17:13:10更新 -->
最近在做一个类似于你画我猜这样的小游戏的东西,做着玩儿,需要用到这样两个类,就顺便新增到这个库里面好了。
新增了两个和图形相关的类。
org.xandroid.graphic.XPoint
org.xandroid.graphic.XLine
新增了一个用于视图单位转换的类
org.xandroid.util.XDensityHelper
<!-- 2014-4-1 19:58:41更新 -->
开始使用到Fragment这个类,因为Fragment也需要使用toast发送信息,所以把XActivity里面的方法复制了一份,放到XFragment类中。
新增了
org.xandroid.component.XFragment
类图:
弄了半天github就是commit不上去,只能用googlecode了
googlecode地址:https://code.google.com/p/kross-xandroid/