最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解Android開發(fā)中硬件加速支持的使用方法

 更新時間:2016年02月22日 15:15:09   作者:airk000  
這篇文章主要介紹了Android應用開發(fā)中硬件加速支持的使用方法,主要針對圖形繪制時的硬件加速與OpenGL調用,需要的朋友可以參考下

Android從3.0(API Level 11)開始,在繪制View的時候支持硬件加速,充分利用GPU的特性,使得繪制更加平滑,但是會多消耗一些內存。
      開啟或關閉硬件加速:
      由于硬件加速自身并非完美無缺,所以Android提供選項來打開或者關閉硬件加速,默認是關閉??梢栽?個級別上打開或者關閉硬件加速:
      Application級別:<applicationandroid:hardwareAccelerated="true" ...>
      Activity級別:<activity android:hardwareAccelerated="false" ...>
      Window級別:

復制代碼 代碼如下:

getWindow().setFlags( WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED); 

 注意:目前為止,Android還不支持在Window級別關閉硬件加速。
View級別:

myView.setLayerType(View.LAYER_TYPE_HARDWARE, null); 

 注意:目前為止,Android還:不支持在View級別開啟硬件加速。

檢測當前是否啟用了硬件加速:

// 方法一 
// 此方法返回true,如果myView掛在一個開啟了硬件加速的Window之下, 
// 也就是說,它在繪制的時候不一定使用了硬件加速,getDrawingCache 
myView.isHardwareAccelerated(); 
    
// 方法二 
// 返回true,如果canvas在繪制的時候啟用了硬件加速 
// 盡量采用此方法來判斷是否開啟了硬件加速 
canvas.isHardwareAccelerated(); 

控制硬件加速開關

引言中說過控制硬件加速可以在不同層級進行,這樣可以避免因為一個繪制動作不支持而導致整個應用都不可以使用硬件加速這樣很愚蠢的情況發(fā)生。總共有四個層級,從上到下是:
1. Application
應用程序等級控制硬件加速,在AndroidManifest.xml中進行:

<application android:hardwareAccelerated="true" ...> 

在Android4.0以上(包含)默認就為true,即打開。如果整個應用都不想用硬件加速,則設定為false。

2. Activity
Activity等級的控制方法還是在AndroidManifest.xml中進行,如下展示了應用整體使用硬件加速,而某一個Activity不使用的例子:

<application android:hardwareAccelerated="true"> 
 <activity ... /> 
 <activity android:hardwareAccelerated="false" /> 
</application> 


3. Window
窗口級控制,如果只是想讓某個窗口使用硬件加速:

getWindow().setFlags( 
 WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED, 
 WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED); 


4. View
可以通過代碼在運行時控制單個View是否使用硬件加速:

myView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 

LAYER_TYPE_HARDWARE即為使用硬件加速(GPU),LAYER_TYPE_SOFTWARE使用CPU進行繪制。

理解View的繪制模型:
      1.沒有硬件加速:invalidate the view hierarchy ------> draw the view hierarchy
      2.有硬件加速:invalidate the view hierarchy ------> record and update the display list ------> draw the display list
      硬件加速的限制:
      目前,Android對硬件加速的支持并非完美,有些繪制操作在開啟硬件加速的情況下不能正常工作(具體的列表可以參考Android開發(fā)者文檔)。
      不過Android可以保證內置的組件和應用支持硬件加速。因此,如果應用中只使用了標準UI組件,可以放心開啟硬件加速。
      隨著Android的版本升級,相信一段時間之后,硬件加速可以得到完美的支持。
 開啟硬件加速之后的異常反應:
      1.某些UI元素沒有顯示:可能是沒有調用invalidate
      2.某些UI元素沒有更新:可能是沒有調用invalidate
      3.繪制不正確:可能使用了不支持硬件加速的操作, 需要關閉硬件加速或者繞過該操作
      4.拋出異常:可能使用了不支持硬件加速的操作, 需要關閉硬件加速或者繞過該操作

 

相關文章

  • Android?App設計規(guī)范深入講解

    Android?App設計規(guī)范深入講解

    隨著安卓智能手機不停的更新?lián)Q代,安卓手機系統(tǒng)越來越完美,屏幕尺寸也越來越大啦,下面這篇文章主要給大家介紹了關于Android?App設計規(guī)范的相關資料,需要的朋友可以參考下
    2022-10-10
  • Android登陸界面實現(xiàn)清除輸入框內容和震動效果

    Android登陸界面實現(xiàn)清除輸入框內容和震動效果

    這篇文章主要介紹了Android登陸界面實現(xiàn)清除輸入框內容和震動效果,感興趣的小伙伴們可以參考一下
    2015-12-12
  • 關于Android多渠道打包問題看這一篇就夠了

    關于Android多渠道打包問題看這一篇就夠了

    這篇文章主要介紹了關于Android程序的多渠道打包方法,還不會的同學快進來學習下吧,建議收藏以防迷路
    2021-08-08
  • TextView實現(xiàn)圖文混合編排的方法

    TextView實現(xiàn)圖文混合編排的方法

    這篇文章主要為大家詳細介紹了TextView實現(xiàn)圖文混合編排的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Android與JS相互調用的方法

    Android與JS相互調用的方法

    這篇文章主要介紹了Android與JS相互通信的方法,幫助大家更好的理解和學習使用Android開發(fā),感興趣的朋友可以了解下
    2021-04-04
  • 關于Android bitmap你不知道的一些事

    關于Android bitmap你不知道的一些事

    這篇文章主要為大家詳細介紹了關于Android bitmap你不知道的一些事,使用bitmap需要注意的一些細節(jié),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • Eclipse新建Android項目報錯解決方案詳細匯總

    Eclipse新建Android項目報錯解決方案詳細匯總

    這篇文章主要介紹了Eclipse新建Android項目報錯解決方案詳細匯總,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • Android中ImageView的使用方法

    Android中ImageView的使用方法

    這篇文章主要為大家詳細介紹了Android中ImageView的使用方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-05-05
  • Android高仿2048小游戲實現(xiàn)代碼

    Android高仿2048小游戲實現(xiàn)代碼

    這篇文章主要介紹了Android高仿2048小游戲實現(xiàn)代碼的相關資料,非常不錯具有一定的參考借鑒價值,需要的朋友可以參考下
    2016-10-10
  • android編程實現(xiàn)設置、打開wifi熱點共享供他人連接的方法

    android編程實現(xiàn)設置、打開wifi熱點共享供他人連接的方法

    這篇文章主要介紹了android編程實現(xiàn)設置、打開wifi熱點共享供他人連接的方法,涉及Android創(chuàng)建WiFi及設置共享的相關實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-11-11

最新評論

吉木萨尔县| 金平| 金堂县| 通城县| 博白县| 新乡市| 浮梁县| 铅山县| 宜黄县| 镇赉县| 周至县| 泌阳县| 东乌珠穆沁旗| 宁阳县| 朝阳市| 大理市| 新泰市| 吴忠市| 赤水市| 白山市| 深圳市| 彰化市| 五指山市| 普陀区| 慈利县| 共和县| 沂南县| 洛川县| 宝清县| 泸水县| 山东| 建宁县| 千阳县| 平遥县| 滨州市| 新津县| 富源县| 新闻| 大丰市| 宜兴市| 宜丰县|