Android頁面做美觀了真的很難,沒信心做自己的應用了,無聊時間做了個QQ仿制品
算法寫完了,就開始弄界面,悲劇的發現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");
版權之類的也是一個簡單的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,點擊頭像跳轉,



























posted on 2010-11-28 11:45 zeyuphoenix 閱讀(7126) 評論(17) 編輯 收藏 所屬分類: 其它Java使用