java&android

 作用域範圍

@SuppressWarnings:抑制警告
TypeArray:context通過調用obtainStyledAttributes方法來獲取一個TypeArray,然後由該TypeArray來對屬性進行設置,obtainStyledAttributes方法有三個,我們最常用的是有一個參數的obtainStyledAttributes(int[] attrs),其參數直接styleable中獲得,調用結束後務必調用recycle()方法,否則這次的設定會對下次的使用造成影響  
&與 &&:
電路問題總結:
對於:&   -- >  不管怎樣,都會執行"&"符號左右兩邊的程序
對於:&& -- >  只有當符號"&&"左邊程序爲真(true)後,纔會執行符號"&&"右邊的程序
下面來說說運算規則:
對於:&  -- >  只要左右兩邊有一個爲false,則爲false;只有全部都爲true的時候,結果爲true
對於:&& -- > 只要符號左邊爲false,則結果爲false;當左邊爲true,同時右邊也爲true,則結果爲true
1、sendEmptyMessage與sendMessage的區別:
sendMessage()允許你處理Message對象(Message裏可以包含數據,)
sendEmptyMessage(int what)只能放數據。其中參數what作用:就類似於ID,處理消息的時候用於區分你send一個0和1,處理的時候就要判斷了if(msg.what == 0){}else if(msg.what == 1){}
2、sendMessageAtTime()與sendEmptyMessageDelay()的區別:
這兩句是等效的,都是延時1秒將消息加入列隊
msgHandle.sendMessageAtTime(msg, SystemClock.uptimeMillis()+1000);
msgHandle.sendMessageDelayed(msg, 1000)
sendMessageAtTime的uptimeMillis是相對系統開機時間的絕對時間,SystemClock.uptimeMillis()是當前開機時間

反射:
1.獲取某個正在運行的類的方法
Method method = 類名.getClass().getMethod(方法名,參數1,參數2,...); 或者 Method method = Class.forName(完整類名).getMethod(方法名,參數1,參數2,...);
獲取完整類名:類名.class.getName()
2.執行該方法
Boolean b = 獲取的方法實例method.invoke(類名,參數1,參數2,...)

斷言:
1、assert <boolean表達式>
如果<boolean表達式>爲true,則程序繼續執行。
如果爲false,則程序拋出AssertionError,並終止執行。
2、assert <boolean表達式> : <錯誤信息表達式>
如果<boolean表達式>爲true,則程序繼續執行。
如果爲false,則程序拋出java.lang.AssertionError,並輸入<錯誤信息表達式>。

getDimension()、getDimensionPixelSize()、getDimenPixelOffset()
相同點:結果值都是將資源文件中定義的dip值乘以屏幕密度
不同點:
getDimension():返回的是float,
getDimensionPixelSize():返回的是int, 返回的是實際數值的四捨五入
getDimenPixelOffset():返回的是int, 返回的是實際數值去掉後面的小數點

添加aar依賴:在build.gradle中的android閉包的repositories{}中添加flatDir{ dirs 'libs'  //aar目錄},然後在dependencies{}中添加依賴
compile(name: 'aar_name', ext: 'aar'),再將aar文件複製到aap/libs目錄下

Android DisplayMetrics類獲取屏幕大小:
https://www.cnblogs.com/feng-ye/p/5923019.html

 

 

 

 


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章