安卓学习笔记2
1.IntentFilter ?
Intent詳解?http://www.cnblogs.com/engine1984/p/4146621.html
<activity android:name=".SecondActivity"><intent-filter><action android:name="hello1" /><action android:name="hello2" /><category android:name="android.intent.category.DEFAULT" /><category android:name="category1" /><category android:name="category2" /></intent-filter></activity> <activity android:name=".ThreeActivity"><intent-filter><action android:name="hello1" /></intent-filter></activity> Intent intent = new Intent(); intent.setAction("hello1"); intent.addCategory("category1"); startActivity(intent);啟動一個activity,這個activity的action為hello1,category為category1,必須同時指定action和category 才可以找到對應的activity。只指定action的話,是找配置了
<category android:name="android.intent.category.DEFAULT" /> 的action , ThreeActivity是找不到的,Intent是同時找action和category組合,缺一不可2.使用LayoutInflater加載布局
帶你一步步深入了解View(一)http://blog.csdn.net/guolin_blog/article/details/129218893
3.使用FragmentTabHost實現底部導航
http://www.tuicool.com/articles/fmMV7b
http://www.codesocang.com/jiaocheng/shoujikaifa/10312.html
什么是FragmentTabHost?
在Android較早的API中,使用導航欄一般是采用TabActibvity+TabHost+Activity,但自從Android 3.0中引入了Fragment后,上述方式則不再被官方推薦,而是推薦使用FragmentActivity+FragmentTabHost+Fragement。這樣做的原因,想必大家都明白:因為Fragment比Activity更靈活,且更省資源。
因為Fragment是3.0中才引入的,Google為了保持向下兼容的風格,提供了v4包:android.support.v4.app.FragmentTabHost,
TabHost命名空間:android.widget.TabHost初始化函數(必須在addTab之前調用):setup(); 包含兩個子元素:1.Tab標簽容器TabWidget(@android:id/tabs)2.Tab內容容器FrameLayout(@android:id/tabcontent)FragmentTabHost命名空間:android.support.v4.app.FragmentTabHostandroid.support.v13.app.FragmentTabHost初始化函數(必須在addTab之前調用):setup(this, getSupportFragmentManager(), R.id.realtabcontent);包含三個子元素:1.Tab標簽 容器TabWidget(@android:id/tabs)2.Tab內容 容器FrameLayout [寬高皆為0dp](@android:id/tabcontent)3.Tab內容 容器FrameLayout [真正的容器](@+id/RealTabContent)疑問:為什么同時存在TabContent 和 RealTabContent 兩個FrameLayout? 答疑:《關于FragmentTabHost中TabWidget不能移到屏幕下面的Bug》http://blog.csdn.net/wklbeta/article/details/11329207資料:《Android開發:使用Fragment改造TabActivity》http://www.blogjava.net/amplifier/archive/2012/12/27/393409.html經驗 - 實現Tab功能的幾種方式: 1.(廢棄)繼承自TabActivity + TabHost 布局 + Activity 內容1.1:TabActivity為ActivityGroup[在版本13里被放棄]子類1.2:使用getTabHost() 獲得TabHost 對象1.3:使用 newTabSpec(...).setContent(Intent) 添加Tab標簽與內容 2.(廢棄)繼承自ActivityGroup + TabHost布局 + Activity 內容2.1:ActivityGroup在版本13里被放棄2.2:使用findViewById 獲得TabHost 對象2.3:使用setup(new LocalActivityManager(this, true))初始化2.4:使用 newTabSpec(...).setContent(Intent) 添加Tab標簽與內容 3.(簡單)繼承自FragmentActivity + FragmentTabHost 布局 + Fragment 內容3.1:使用findViewById 獲得FragmentTabHost 對象3.2:使用setup(this, getSupportFragmentManager(), R.id.realtabcontent)初始化3.3:使用addTab(newTabSpec().setIndicator(),Fragment.class, null) 添加Tab標簽與內容 4.(復雜)繼承自FragmentActivity + TabHost 布局 + ViewPager布局 + Fragment 內容4.1:使用findViewById 獲得TabHost 對象4.2:使用setup()初始化4.3:使用TabHost.addTab(tabSpec.setContent(DummyTabFactory));添加Tab標簽與空內容4.4:在TabHost.onTabChanged中控制ViewPager的實際顯示4.5:滑動時在ViewPager.onPageSelected 中控制Tab標簽的選擇。PS:當Tab標簽數量固定且不追求和系統保持一致的標簽效果,的情況下這里的TabHost布局有些多余。如 :特有應用需要的Tab標簽固定,且有自己的一套顯示效果,那么這里完全無需TabHost布局。 5.(DIY)繼承自FragmentActivity + 自定義布局 + ViewPager布局 + Fragment 內容5.1:自定義布局中嵌入固定Tab標簽元素5.2:在標簽元素點擊事件中控制ViewPager的實際顯示5.3:滑動時在ViewPager.onPageSelected 中控制標簽元素的選擇。?4.Android中Application類用法
http://www.cnblogs.com/renqingping/archive/2012/10/24/Application.html
5.Gradle實現apk多渠道打包?
http://blog.csdn.net/maosidiaoxian/article/details/42000913
http://www.cnblogs.com/meishan/p/5903502.html
AndroidManifest.xml文件詳解(meta-data)
http://www.cnblogs.com/zhangxia/p/4958276.html
Android studio 多渠道打包(超簡潔版)
http://www.cnblogs.com/0616--ataozhijia/p/4203997.html
第一次使用Android Studio你應該知道的一切配置:gradle項目構建
http://www.cnblogs.com/smyhvae/p/4456420.html
6.gson json的解析和生成?
Gson的基本用法
http://www.jianshu.com/p/e740196225a4
7.NoHttp文檔地址
http://doc.nohttp.net/222341
8.Fragment用app包還是v4包解析
http://blog.csdn.net/zc0908/article/details/50721553
Android manifest <uses-permission> 的位置千萬別放錯
應該放在<manifest 的下一級,放到 <application>里面就會杯具了,編譯不報錯,但是程序永遠不會拿到這些權限!2個多小時血與火的教訓!哈哈:)
9.《EventBus》的運用
http://edu.csdn.net/course/detail/3349
10.setVisibility 設置view的可見和不可見
View缺省為可見的,在應用可以通過setVisibility 修改View的可見性,View可用性可以有如下三種狀態:View.VISIBLE View可見
View.INVISIBLE View不可以見,但仍然占據可見時的大小和位置。
View.GONE View不可見,且不占據空間。
本例使用三個按鈕來修改View B的可見性:
?
總結
- 上一篇: Briefly unavailable
- 下一篇: ElasticSearch——学习笔记