上个月买了个 xt701, 心想无聊还可以写个应用呢 , 费了 2 周时间学习 Android 的写法,以为熟悉了。然后写了个五子棋,当时以为做界面和 Swing 一样呢,根本没想到多复杂,就把主要精力放在对弈上了,用了 4 、 5 天时间写了电脑的算法,终于我这个初级的五子棋水平已经下不过电脑了,很兴奋的以为程序就完成了,随便去市场一看 ^^_^^_^, 五子棋程序好多,心想可能五子棋太简单了,反正思路差不多,都是对弈,改写象棋吧,又用了一周写了象棋的算法,开始都是在电脑写,终于搜索深度高的时候,根本打不过电脑(我象棋也很菜),很高兴的移植到手机上,发现手机内存和 cpu 没那么牛,又开始改,最后终于可以在手机上跑了,以为就完成了,结果这就是是悲剧的开始呀。
算法写完了,就开始弄界面,悲剧的发现 Android 的界面好难弄,我以前写 swing 都是完全用代码根据 layout 写界面然后放在文件里的,开始用 xml 配置还真不了解,头大后自我安慰:反正大家玩的是游戏,不是界面,随便写个就当玩票吧(其实也是工作开始忙了,上班没那么多时间了 . )随便去网上弄了几个图片,改了改就把我的第一个程序五子棋弄出来了,丢人 ... 看看界面:
被人好好嘲笑了一番,说这种东西有谁用,你没这个天分呀,郁闷。。
正好这时候来了个新活,就放弃不写了,过了 2 周又闲了,心想应该把上次的写完,还有个象棋的呢,算法写了那么久不用不浪费了。又开始写,写完之后在不同手机上一跑,自卑了,根本不行(当时就会用 linelayout 和绝对定位);想了想还是努力学习下怎么做界面吧,要不然写的好也没用啊,于是在手机上翻了翻,发现 QQ 的界面很不错,就仿照他写吧 .
显示快捷方式,这个简单以前就会:
Intent.ShortcutIconResource shortcutIconResource = Intent.ShortcutIconResource
.fromContext ( this , R.drawable. icon );
iconIntent.putExtra( "android.intent.extra.shortcut.ICON_RESOURCE" ,
shortcutIconResource);
iconIntent.setAction( "com.android.launcher.action.INSTALL_SHORTCUT" );
sendBroadcast(iconIntent);
配置里再加个:
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
效果也差不多:
在网上查了许久,用 Notification
Notification notification = new Notification (
R.drawable. icon_online , " 手机 QQ 正在运行 " , System
.currentTimeMillis ());
RemoteViews remoteviews = new RemoteViews(
activity .getPackageName(),
R.layout. notification_app_running );
然后对 remoteviews 编辑就可以了 , 它也有图片文字和布局属性 , 最重要是要一直保持在消息栏上面
notification.flags = notification.flags| Notification.FLAG_ONGOING_EVENT;
然后就是登陆了
登陆主界面只能一点点的绘制了,最终也不怎么好
网络设置可以调用系统的
Intent intent = new Intent( "android.settings.WIRELESS_SETTINGS" );
this .startct ivity(intent)版权之类的也是一个简单的 HelpActivity ,用 Html
.fromHtml 转换就可以了
然后是登陆的动画界面:
直接用 AnimationDrawable 使用一个 Handler
Handler loginHandler = new Handler();
loginHandler.postDelayed( new LoginRunable(), 2000L);
在线程里
if ( animationDrawable != null ) {
animationDrawable .stop();
animationDrawable .start();
登陆完就是主界面,这个比较复杂,有 title 有 bottom 还有 tabwidget,中间是一个treeview,需要自己重写:
-> ->
它的最上面是 topwidget ,点击头像跳转, 界面很好做,一个 listview 就可以了,关键还是图片呀,终于发现美工比程序员重要多了,资料界面: