1. listview中converView複用 可以使用三元表達式
View view = convertView != null ? convertView :View.inflate(MainActivity.this, R.layout.item, null);
2. 數據庫幫助類有兩個方法,第二個方法更新數據庫用,只有版本號發生變化的時候掉用
3. 每一個應用的主線程都是死循環
4. SmartImageView 內部使用handler 自動開啓線程
5. Preference 有三種方式獲取 getPreferences 獲取的是屬於當前activity的,每個activity只有一個
getSharedPreferences 屬於整個應用程序 ,可以指定名稱
getDefaultSharedPreferences 屬於整個應用程序但是隻有一個會根據包名和PreferenceActivity的佈局文件起一個名字保存
6. PreferenceActivity是android中專門實現程序界面以及參數存儲的一個activity
7. Fragment的replace方法最終掉用的是doAddOp將Fragment和對Fragment所進行的操作放到op鏈表中:op鏈表用來保存addremove replace 等action
8. Onattach oncreate oncreatviewonactivitydreated onStart onresume onPause onStop
Ondestroyview ondestroy ondetach
9. singleTask 通過intent啓動activity時,爲了不讓多次創建對象 ,設置模式
這個時候,如果這個實例是存在的,系統會直接掉用onNewIntent方法
系統隨時會殺死後臺運行的activity,如果這發生,系統就會調用onCreate方法
解決辦法processExtraData 調用裏面的setIntent 然後獲取數據的時候調用getIntent
10. activity中onsaveInstanceState方法,調用的原則: 當系統未經過你同意銷燬了你的activity,就有責任幫你保存數據數據會被onRestoreInstanceState傳到onCreate方法中.也可以選擇在這個方法中恢復數據
11. res/raw 和assets的區別: raw 中的文件會被映射到R文件中,訪問的時候直接使用id訪問,但是assets的文件不會被映射到R文件中 ,訪問的時候使用assetManager
res\raw不可以再有目錄結構,但是assets還可以繼續創建目錄
相同點; 文件都會原封不動的打包到apk中,不會被編譯爲二進制
12. res\xml中的xml文件,在代碼中獲取Resource.getXMl()
13. 進程託管??android 面向組件開發 什麼是rpc? 進程 清單文件中可以配置
14. setContentView 和 inflate 的區別: setContentView一旦調用,layout就會立即顯示UI佈局,而inflate只會把layout形成一個view對象,有需要的時候再顯示出來(有需要的時候調用setContentView(view)顯示出來 )
15. 應用常駐內存配置清單文件 persistent = “true”
16. Listview判斷頂部或者底部 當滾動的時候 監聽 判斷當界面上的第一個條目位置或者最後一個條目的位置
17. Drawable加載圖片 drawable = Drawable.createFromStream(newURL(url).openStream(), "image.png");