1、android中的計量單位
布局中盡量用dip(dp):獨立像素 做單位
字體中盡量用sp:放大像素 與刻度無關做單位
2、Context
Context是一個抽象類,它有很多子類,如Activity、TabActivity、Service等
Context可以理解為句柄或上下文,主要用於加載或訪問系統資源很多組件實例化都要傳遞它作為參數
如 Toast,由於Activity是它的子類,所以直接傳this即可,但是在內部類實現時一般 要傳 ActivityName.this
3、Resources
Android 中的Resources都會由R.java生成ID自動管理
引用時只要 調用 getResources().getXX(ID)即可
XX表示res文件下的xml文件名;
4、findViewById
通過ID來找到布局中的組件
5、LayoutInflate
實例化xml布局文件中的布局,獲取具體布局
一般有如下兩種寫法,但是本質是一樣的
LayoutInflater inflater = LayoutInflater.from(this);
View layout = inflater.inflate(R.layout.main, null);
LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
View layout = inflater.inflate(R.layout.main, null);
6、另外補充下
getSystemService是Activity中的方法,根據傳入的name來取得對應的服務對象,這些服務名稱參數都是Context類中的常量:
傳入的Name 返回的對象 說明
WINDOW_SERVICE WindowManager 管理打開的窗口程序
LAYOUT_INFLATER_SERVICE LayoutInflater 取得xml裡定義的view
ACTIVITY_SERVICE ActivityManager 管理應用程序的系統狀態
POWER_SERVICE PowerManger 電源的服務
ALARM_SERVICE AlarmManager 鬧鐘的服務
NOTIFICATION_SERVICE NotificationManager 狀態欄的服務
KEYGUARD_SERVICE KeyguardManager 鍵盤鎖的服務
LOCATION_SERVICE LocationManager 位置的服務,如GPS
SEARCH_SERVICE SearchManager 搜索的服務
VEBRATOR_SERVICE Vebrator 手機震動的服務
CONNECTIVITY_SERVICE Connectivity 網絡連接的服務
WIFI_SERVICE WifiManager Wi-Fi服務
TELEPHONY_SERVICE TeleponyManager 電話服務