android SDK中提供了TabHost使用起來很方便, 但是當(dāng)tab比較多的時(shí)候,就會擠在一起,而不能橫向的滾動比較麻煩.
于是我嘗試的制作了一個(gè)簡單的使用Gallery來代替TabHost的例子, 確實(shí)夠簡單的,自娛自樂.....僅供參考

使用BroadcastReceiver來切換不同的Tab
public class ChangeTabBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int index = intent.getExtras().getInt(CURRENT_TAB_INDEX);
Log.i(TAG, "onReceive index = " + index);
// setCurrentTab(index);
topBar.setSelection(index);
startGroupActivity(titleList.get(index).toString(),
(Intent) intentList.get(index));
}
}
沒有詳細(xì)研究SDK中的TabHost實(shí)現(xiàn)機(jī)制, 使用起來還是有些不方便的地方
public class GalleryTabActivityDemo extends GalleryTabactivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setDelegate(new SliderBarActivityDelegateImpl());
for (int i = 0; i < 14; i++) {
Intent intent;
if (i % 2 == 0)
intent = new Intent(this, DemoActivity1.class);
else
intent = new Intent(this, DemoActivity2.class);
this.addTab("title" + i, android.R.drawable.star_on, intent);
}
//必須在addTab后調(diào)用commit, 有點(diǎn)麻煩, 將來會找更好的辦法
super.setup();
}
//可自定義切換tab時(shí)觸發(fā)的操作
private class SliderBarActivityDelegateImpl extends
SliderBarActivityDelegate {
protected void onTabChanged(int tabIndex) {
Log.d("onTabChanged", "" + tabIndex);
}
}
}
最近工作比較忙,沒太多時(shí)間學(xué)習(xí)android,將來會慢慢改善, 先湊合用, 拋塊磚先, 各位有玉的使勁砸, 金條也行
下載
posted @
2010-05-13 15:46 小強(qiáng) 閱讀(2158) |
評論 (0) |
編輯 收藏
學(xué)習(xí)android的練習(xí)小軟件.
制作文件管理器的初衷是發(fā)現(xiàn)G1上并沒有隨系統(tǒng)附帶文件瀏覽軟件,
考慮到電子書,媒體播放器或其它一些軟件會使用到文件瀏覽,選擇文件或文件夾, 所以先做了這個(gè)文件管理工具并封裝一些參數(shù)供第三方程序調(diào)用
應(yīng)用很簡單, 只是把手機(jī)和SD卡中的文件列出來, 支持圖片和mp3的簡單預(yù)覽. 未來會有更多的功能擴(kuò)充進(jìn)來. 歡迎大家試用并提出意見.
--------------------------------------------------------4月更新0.3版
--------------------------------------------------------------------
自從上次更新后工作太忙,半年沒玩兒ANDROID了, 最近剛剛閑下來, 繼續(xù)完善文件管理器
順便封裝了一些其它的widget, 整理后再發(fā)上來
看著網(wǎng)上鋪天蓋地的各種android應(yīng)用, 再看看我這個(gè)小破軟件, 實(shí)在有點(diǎn)拿不出手, 但既然做了就得不斷完善下去
目標(biāo)是做一個(gè)封裝widget的集合, 方便開發(fā)者使用
1, 使用線程和handler message機(jī)制讀取文件列表, 提升軟件性能
2, 解決文件列表多次滾動后速度下降的問題
3, 打開文件使用手機(jī)關(guān)聯(lián)的應(yīng)用
4, 增加文件縮略圖顯示


--------------------------------------------------------10月27日更新0.2版
--------------------------------------------------------------------
1. 0.2版主要增加了一些使用者的功能, 增加了收藏夾功能, 方便用戶快速的瀏覽到經(jīng)常訪問的文件或文件夾
2. 修改了一些for developer的bug


-------------------------------------------------------- 0.1版
--------------------------------------------------------------------



-------------------------------------------------------------------- for
developer
--------------------------------------------------------------------
G1上并沒有隨系統(tǒng)附帶文件瀏覽軟件, 考慮到電子書,媒體播放器或其它一些軟件會使用到文件瀏覽,選擇文件或文件夾,
所以先做了這個(gè)文件管理工具并封裝一些參數(shù)供第三方程序調(diào)用,可以做為插件形式使用
把文件管理器封裝起來并使用intent機(jī)制設(shè)置瀏覽參數(shù)和調(diào)用
目前暫不支持多文件選擇, 將在下一版中發(fā)布
調(diào)用程序示例
1
Button button2
=
(Button) findViewById(R.id.but2);
2
button2.setOnClickListener(testFileManager);
1
private
OnClickListener testFileManager
=
new
OnClickListener() {
2
public
void
onClick(View v) {
3
Intent intent
=
new
Intent(
"
net.uiiang.android.alkaid.FILEMANAGER
"
);
4
5
//
參數(shù)root_directory, 設(shè)置瀏覽的根目錄, 例如設(shè)置
/sdcard則只允許程序?yàn)g覽sd卡中的內(nèi)容, 當(dāng)程序回退上層文件夾到/sdcard后不再向上回退
6
//
參數(shù)類型為字符串, 默認(rèn)為"/"(根目錄)
7
intent.putExtra(
"
root_directory
"
,
"
/
"
);
8
9
//
參數(shù)exclude_directory, 設(shè)置不顯示的目錄, 例如設(shè)
置"/data", "/dev", 則"/data", "/dev"這兩個(gè)目錄不會顯示給用戶
10
//
參數(shù)類型為字符串?dāng)?shù)組, 默認(rèn)不排除任何文件夾
11
intent.putExtra(
"
exclude_directory
"
,
12
new
String[] {
"
/data
"
,
"
/dev
"
});
13
14
//
參數(shù)thrid_party_call, 當(dāng)?shù)谌匠绦蛘{(diào)用時(shí), 必須設(shè)置
此參數(shù)為true, 否則下面幾個(gè)參數(shù)不起作用
15
//
參數(shù)類型為boolean, 默認(rèn)為false, 會顯示以下參數(shù)可設(shè)置的
所有菜單(除 選擇菜單)
16
intent.putExtra(
"
thrid_party_call
"
,
true
);
17
18
//
參數(shù)directory_show_type, 目錄瀏覽方式
19
//
參數(shù)類型為 int, 默認(rèn)為0
20
//
0 : 顯示文件和文件夾(默認(rèn))
21
//
1 : 只顯示文件
22
//
3 : 只顯示文件夾
23
intent.putExtra(
"
directory_show_type
"
,
0
);
24
25
//
參數(shù)use_menu_items, 設(shè)置顯示的預(yù)置菜單
26
//
參數(shù)類型為:int數(shù)組
27
//
菜單列表:
28
//
1 : 上下文菜單-打開 (文件夾)
29
//
2 : 上下文菜單-刪除
30
//
3 : 上下文菜單-詳細(xì)信息
31
//
4 : 上下文菜單-復(fù)制
32
//
5 : option菜單-粘貼
33
//
6 : option菜單-新建文件夾
34
//
99: 上下文菜單-選擇 , 若需要文件管理器返回一個(gè)選中的文件路
徑, 則必須設(shè)置此菜單
35
//
當(dāng)用戶點(diǎn)擊此菜單后, 文件管理器退出并返回給調(diào)用程序一個(gè)字符串?dāng)?shù)
組, 數(shù)組中包含文件路徑信息
36
intent.putExtra(
"
use_menu_items
"
,
new
int
[] {
99
});
37
38
//
參數(shù)show_info_in_list, 是否在瀏覽文件中顯示簡單的
信息, 如文件夾中包含多少子文件夾和文件
39
//
默認(rèn)為true
40
intent.putExtra(
"
show_info_in_list
"
,
false
);
41
42
//
參數(shù)show_file_extension, 是否顯示文件后綴名
43
//
默認(rèn)為 true
44
intent.putExtra(
"
show_file_extension
"
,
false
);
45
46
//
參數(shù)use_simple_view, 是否使用簡單文件預(yù)覽
47
//
用戶單擊文件后可以簡單的預(yù)覽文件內(nèi)容, 目前支持圖片和音樂文件
48
//
默認(rèn)為 true
49
intent.putExtra(
"
use_simple_view
"
,
false
);
50
51
//
參數(shù)animation_show_list, 是否使用動態(tài)效果顯示文
件列表, 目前只支持向下卷簾式的效果
52
//
默認(rèn)為true
53
intent.putExtra(
"
animation_show_list
"
,
true
);
54
55
//
參數(shù)mutiple_select, 是否支持多選, 為true可以一次
性選擇多個(gè)文件或目錄
56
//
默認(rèn)為false
57
intent.putExtra(
"
mutiple_select
"
,
false
);
58
59
startActivityForResult(intent, SELECT_FILE);
60
}
61
};
通過startActivityForResult調(diào)用文件管理器, 并使用上下文菜單選擇文件或文件夾

點(diǎn)擊"選擇"后, 返回到調(diào)用程序
1
@Override
2
protected
void
onActivityResult(
int
requestCode,
int
resultCode, Intent data) {
3
super
.onActivityResult(requestCode, resultCode, data);
4
if
(requestCode
==
SELECT_FILE) {
5
if
(resultCode
==
RESULT_OK) {
6
//
參數(shù)名為selected_uri, 得到字符串?dāng)?shù)組中包含文件路徑
7
String[] selectArr
=
data.getExtras().getStringArray(
8
"
selected_uri
"
);
9
if
(selectArr
!=
null
) {
10
String selectFile
=
""
;
11
for
(String string : selectArr) {
12
System.out.println(
"
you select =
"
13
+
data.getExtras().getStringArray(
14
"
selected_uri
"
));
15
}
16
}
17
18
}
19
}
20
}

posted @
2010-05-05 17:10 小強(qiáng) 閱讀(338) |
評論 (0) |
編輯 收藏
摘要: 1. 0.2版主要增加了一些使用者的功能, 增加了收藏夾功能, 方便用戶快速的瀏覽到經(jīng)常訪問的文件或文件夾
2. 修改了一些for developer的bug
閱讀全文
posted @
2009-10-27 16:05 小強(qiáng) 閱讀(1644) |
評論 (2) |
編輯 收藏
摘要: 為文件將來做電子書或媒體播放器等程序時(shí)瀏覽文件
把文件管理器封裝起來并使用intent機(jī)制設(shè)置瀏覽參數(shù)和調(diào)用
閱讀全文
posted @
2009-10-17 20:21 小強(qiáng) 閱讀(2669) |
評論 (2) |
編輯 收藏
摘要: 練習(xí)作品 一個(gè)簡單的 android 文件管理器, 支持第三方程序調(diào)用
閱讀全文
posted @
2009-10-17 19:50 小強(qiáng) 閱讀(1933) |
評論 (1) |
編輯 收藏
摘要: 為了體現(xiàn)出android強(qiáng)大的網(wǎng)絡(luò)功能 寫了一個(gè)小爬蟲程序, 通過網(wǎng)絡(luò)直接從網(wǎng)站上下載電子書
閱讀全文
posted @
2008-06-30 12:00 小強(qiáng) 閱讀(1379) |
評論 (0) |
編輯 收藏
摘要: 晚上等著看歐洲杯,閑來無賴接著研究android , 更新了一下uReader
閱讀全文
posted @
2008-06-18 12:46 小強(qiáng) 閱讀(1527) |
評論 (4) |
編輯 收藏
摘要: 閑來無事, 研究了一下android. 做一個(gè)小應(yīng)用練手.
閱讀全文
posted @
2008-06-17 17:31 小強(qiáng) 閱讀(1886) |
評論 (4) |
編輯 收藏
摘要:
閱讀全文
posted @
2008-06-10 17:34 小強(qiáng) 閱讀(412) |
評論 (0) |
編輯 收藏
摘要: 刪除ANDROID數(shù)據(jù)庫
閱讀全文
posted @
2008-06-10 17:30 小強(qiáng) 閱讀(1908) |
評論 (0) |
編輯 收藏
摘要: android 技巧一, 快速顯示修改結(jié)果
閱讀全文
posted @
2008-06-03 17:44 小強(qiáng) 閱讀(356) |
評論 (0) |
編輯 收藏
摘要: device commands:
adb update DATAOPTS
- Flash the specified update file.
If file is not passed, update.zip is used.
adb push - copy file/dir to device
adb pull - copy file/dir from device
adb sync [ ] - copy host->device only if changed
(see 'adb help all')
adb shell - run remote shell interactively
閱讀全文
posted @
2008-06-03 17:36 小強(qiáng) 閱讀(1051) |
評論 (0) |
編輯 收藏
摘要: adb(Android Debug Bridge)是Android提供的一個(gè)通用的調(diào)試工具,借助這個(gè)工具,我們可以管理設(shè)備或手機(jī)模擬器的狀態(tài)。還可以進(jìn)行以下的操作:
1、快速更新設(shè)備或手機(jī)模擬器中的代碼,如應(yīng)用或Android系統(tǒng)升級;
2、在設(shè)備上運(yùn)行shell命令;
3、管理設(shè)備或手機(jī)模擬器上的預(yù)定端口;
4、在設(shè)備或手機(jī)模擬器上復(fù)制或粘貼文件;
閱讀全文
posted @
2008-06-03 17:35 小強(qiáng) 閱讀(1504) |
評論 (0) |
編輯 收藏
摘要: Android是基于Linux內(nèi)核的,對于喜歡研究底層的朋友來說,自然不會放過搞明白Linux層面上一些東西的機(jī)會。當(dāng)然,最終目的還是要搞清楚Linux是如何和上層lib以及虛擬機(jī)結(jié)合的,但是這得等Google完全開源Android之后了。很多關(guān)于Linux運(yùn)行的細(xì)節(jié),都可以通過adb的shell來看到。 閱讀全文
posted @
2008-06-03 17:30 小強(qiáng) 閱讀(3580) |
評論 (1) |
編輯 收藏
大學(xué) (一) http://www.tkk7.com/uiiang/archive/2007/05/27/120342.html
康誥曰:“克明德。”大甲曰:“顧諟天之明命。”帝典曰:“克明峻德。”皆自明也。
湯之盤銘曰:“茍日新,日日新,又日新。”康誥曰:“作新民。”詩曰:“周雖舊邦,其命惟新。”是故君子無所不用其極。
康誥說:“能夠弘揚(yáng)光明的品德。”太甲說:“念念不忘這上天賦予的光明稟性。”堯典說:“能夠弘揚(yáng)崇高的品德。”這些都是說要自己弘揚(yáng)光明正大的品德。
商湯王刻在浴盆上的箴言說:“如果能夠有一天自新,就應(yīng)保持天天自新,永遠(yuǎn)不斷自新。”康誥中說:“鼓勵(lì)人們棄舊圖新。”詩經(jīng)中說:“周朝雖然是古老的國家,但卻稟受了天命,自我更新。”所以,品德高尚的人無處不追求完善。
軟件開發(fā)乃至IT行業(yè)的更新速度極快,今天出個(gè)JAVA,明天出個(gè).net,后天又來個(gè)什么ruby。所以咱們要不斷的學(xué)習(xí),不斷的進(jìn)步才能跟上技術(shù)的更新速度,才能不被淘汰。
但什么叫自新,這個(gè)自新不是說今天出了JAVA,呼啦呼啦的就全買thinking in java去了,明天出了.net又呼啦呼聽的全安.net 2005去了。自新是一個(gè)發(fā)掘和汲取的過程。別一天到晚的看不起struts嫌他麻煩,瞧不上hibernate嫌他浪費(fèi)性能。人家的技術(shù)能在全世界流行,必然有過人之處。想想他為什么能在全世界流行,他體現(xiàn)的是哪種設(shè)計(jì)思想。多學(xué)學(xué)人家的優(yōu)點(diǎn),想辦法把這些優(yōu)點(diǎn)用在自己的代碼上。
詩云:“邦畿千里,惟民所止。”詩云:“緡蠻黃鳥,止于丘隅。”子曰:“于止,知其所止,可以人而不如鳥乎!”
詩云:“穆穆文王,于緝熙敬止!”為人君,止于仁;為人臣,止于敬;為人子,止于孝;為人父,止于慈;與國人交,止于信。
詩經(jīng)說:“京城及其周圍,都是老百姓向往的地方。”詩經(jīng)又說:“‘緡蠻’叫著的黃鳥,棲息在山丘的角落上。”孔子說:“連黃鳥都知道它該棲息在什么地方,難道人還能不如一只鳥兒嗎?”
詩經(jīng)說:“品德高尚的文王啊,為人光明磊落,做事始終莊重謹(jǐn)慎。”做國君的,要做到仁義;做臣子的,要做到恭敬;做子女的,要做到孝順;做父親的,要做到慈愛;與他人交往,要做到講信用。
經(jīng)常看到論壇上有人抱怨,自己的工作單調(diào)只不過是復(fù)制粘貼別人的代碼。可你有沒有想過為什么去復(fù)制粘貼,是因?yàn)樗拇a寫得太好了,放到哪里都能用?還是架構(gòu)設(shè)計(jì)得不合理,需要重構(gòu)。如果是好,他好在哪里,他為什么這么寫。如果不好,又不好在哪里,應(yīng)該怎么改,如果是你來設(shè)計(jì),你又會怎么做來避免犯這樣的錯(cuò)誤。
很多人抱怨自己在一個(gè)小公司不得志,可有沒有想過為什么在這種小公司。你有沒有給IBM,google這樣的公司投過簡歷,投了簡歷有沒有面試,面試了這些大公司為什么不要你,而是錄用了別人。要擺正心態(tài),找到自己的位置。你可以覺得不得志,但要有真才實(shí)學(xué)。龐統(tǒng)那么大的才,到了劉備手下不還是先被發(fā)配去當(dāng)縣令。是金子終要發(fā)光的,后來劉備不也終于認(rèn)識到龐統(tǒng)的才能并委以重任嗎。可如果你啥都不會,看這個(gè)看不起,瞧那個(gè)瞧不上。一天到晚就知道上網(wǎng)聊天打游戲泡MM。就算到了曹營也就當(dāng)個(gè)蔣干,成事不足敗事有余。要本著謙虛學(xué)習(xí)的態(tài)度來對待工作對待周圍的人,要學(xué)會從別人身上發(fā)現(xiàn)優(yōu)點(diǎn)。
詩云:“瞻彼淇澳,菉竹猗猗。有斐君子,如切如磋,如琢如磨。瑟兮僩兮,赫兮喧兮。有斐君子,終不可諠兮!”如切如磋者,道學(xué)也;如琢如磨者,自修也;瑟兮僩兮者,恂栗也;赫兮喧兮者,威儀也;有斐君子,終不可諠兮者,道盛德至善,民之不能忘也。
詩經(jīng)說:“看那淇水彎彎的岸邊,嫩綠的竹子郁郁蔥蔥。有一位文質(zhì)彬彬的君子,研究學(xué)問像加工骨器一樣,不斷切磋;修煉自己像打磨美玉,反復(fù)琢磨。他莊重而開朗,儀表堂堂。這樣的一個(gè)文質(zhì)彬彬的君子,真是令人難忘啊!”
這里所說的“加工骨器,反復(fù)琢磨”,是指做學(xué)問的態(tài)度;“像打磨美玉,反復(fù)琢磨”,是指自我修煉的精神;說他“莊重而開朗”,是指他內(nèi)心謹(jǐn)慎而有所戒懼;說他“儀表堂堂”,是指他非常莊重;說“這樣一個(gè)文質(zhì)彬彬的君子,真是令人難忘啊!”是指由于他品德非常高尚,達(dá)到了最完善的境界,所以使人難以忘懷。
不要為了工作而工作,為了寫代碼而寫代碼。既然干了這行了就要干好,即使不求名揚(yáng)天下,至少要也對得起自己這么多年的努力吧。我?guī)н^幾個(gè)手下,我每次安排任務(wù)后都會說:認(rèn)真干活,只要干完活,你去打CS我都不管。我說這話的目的是不想給大家太多壓力,大家都挺辛苦都不容易。只要干完活,該聊天該上網(wǎng)隨便你。可如果真正會學(xué)習(xí)的人,就應(yīng)該明白,自己干的那些活,永遠(yuǎn)是別人安排的。要想多學(xué)東西,還得根據(jù)自己的特點(diǎn)和能力補(bǔ)充知識。自己寫的代碼是不是已經(jīng)無懈可擊了,有什么地方值得優(yōu)化,實(shí)現(xiàn)方法是不是可以用更優(yōu)雅的方式。
總之,心中要想著不斷進(jìn)步,要么不做,做了就要做到更好。
posted @
2007-05-29 13:05 小強(qiáng) 閱讀(1115) |
評論 (1) |
編輯 收藏