Android 獲取設(shè)備屏幕大小的幾種方法總結(jié)
1、通過WindowManager獲取
DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); System.out.println("heigth : " + dm.heightPixels); System.out.println("width : " + dm.widthPixels);
2、通過Resources獲取
DisplayMetrics dm2 = getResources().getDisplayMetrics(); System.out.println("heigth2 : " + dm2.heightPixels); System.out.println("width2 : " + dm2.widthPixels);
3、獲取屏幕的默認分辨率
Display display = getWindowManager().getDefaultDisplay(); System.out.println("width-display :" + display.getWidth()); System.out.println("heigth-display :" + display.getHeight());
可以看到,第一、第三種方法都用到了getWindowManager()這個方法,而第二種方法沒有用getWindowManager()。有些網(wǎng)友說書寫getWindowManager()后eclipse會報錯,說沒有g(shù)etWindowManager()這個方法,這是什么原因呢?因為getWindowManager()這個方法是在類Activity中的,如果你自己編寫的類不是繼承于類Activity,那么必然在這個類中書寫代碼就不能用到getWindowManager()這個方法。所以當你自己編寫的類不是繼承于類Activity,那么可用第二種方法獲取手機屏幕的大小或者先獲取activity。
fragment中獲?。?/strong>
先獲取activity再獲取windowManager
DisplayMetrics dm = new DisplayMetrics(); getActivity().getWindowManager().getDefaultDisplay().getMetrics(dm); int screenW = dm.widthPixels;
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Android Doze模式下Alarm定時任務(wù)實現(xiàn)流程詳解
這篇文章主要介紹了Android Doze模式下Alarm定時任務(wù)實現(xiàn),Android的定時任務(wù)有兩種,一種是JavaAPI提供的Timer類,另一種就是使用Android的Alarm機制2022-11-11Android中RecyclerView布局代替GridView實現(xiàn)類似支付寶的界面
RecyclerView比GridView來得更加強大,不僅是在分割線的繪制方面,在條目的編輯上也做得同樣出色,下面就來看一下Android中RecyclerView布局代替GridView實現(xiàn)類似支付寶的界面的實例2016-06-06Android自定義ViewGroup實現(xiàn)帶箭頭的圓角矩形菜單
這篇文章主要為大家詳細介紹了Android自定義ViewGroup帶箭頭的圓角矩形菜單實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-07-07