Android開發(fā)中獲取View視圖寬與高的常用方法小結(jié)
本文實例講述了Android開發(fā)中獲取View視圖寬與高的常用方法。分享給大家供大家參考,具體如下:
一、根據(jù)WindowManager管理器獲得
1)這兩種方法在屏幕未顯示的時候,還是處于0的狀態(tài),即要在setContentView調(diào)用之后才有效。
2)Activity必須如此設(shè)置才能獲得view的寬高
//設(shè)置為無標題 requestWindowFeature(Window.FEATURE_NO_TITLE); //設(shè)置為全屏模式getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN
1)老版本
WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight();
2)新版本
DisplayMetrics dm = new DisplayMetrics(); this.getWindowManager().getDefaultDisplay().getMetrics(dm);//this指當前activity screenWidth =dm.widthPixels; screenHeight =dm.heightPixels;
二、在onDraw中由canvas來獲得
@Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); screenWidth =canvas.getWidth(); screenHeight =canvas.getHeight(); }
三、重寫view的onSizeChanged,該方法會在onCreate之后,onDraw之前調(diào)用
protected void onSizeChanged(int w, int h, int oldw, int oldh) { viewHeight=h; viewWidth=w; super.onSizeChanged(w, h, oldw, oldh); }
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android視圖View技巧總結(jié)》、《Android圖形與圖像處理技巧總結(jié)》、《Android開發(fā)入門與進階教程》、《Android調(diào)試技巧與常見問題解決方法匯總》、《Android多媒體操作技巧匯總(音頻,視頻,錄音等)》、《Android基本組件用法總結(jié)》、《Android布局layout技巧總結(jié)》及《Android控件用法總結(jié)》
希望本文所述對大家Android程序設(shè)計有所幫助。
相關(guān)文章
Android Build Variants 為項目設(shè)置變種版本的方法
下面小編就為大家分享一篇Android Build Variants 為項目設(shè)置變種版本的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Android Zxing 轉(zhuǎn)換豎屏掃描且提高識別率的方法
本篇文章主要介紹了Android Zxing 轉(zhuǎn)換豎屏掃描且提高識別率的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-05-05Android高手進階教程(二十二)之Android中幾種圖像特效處理的集錦匯總!!
本篇文章主要介紹了Android中幾種圖像特效處理,比如圓角,倒影,還有就是圖片縮放,Drawable轉(zhuǎn)化為Bitmap,Bitmap轉(zhuǎn)化為Drawable等,有需要的可以了解一下。2016-11-11Android編程實現(xiàn)調(diào)用系統(tǒng)圖庫與裁剪圖片功能
這篇文章主要介紹了Android編程實現(xiàn)調(diào)用系統(tǒng)圖庫與裁剪圖片功能,結(jié)合實例形式分析了Android針對圖形的旋轉(zhuǎn)與剪切等具體操作技巧,需要的朋友可以參考下2017-01-01Android入門之BroadCast模擬實現(xiàn)異地登錄事件發(fā)生后的主動退出
隨著對BroadCast的越來越深入,我們今天要實現(xiàn)一個稍微復雜一點的BroadCast。即只允許一個設(shè)備登錄一個帳號時,APP會彈一個對話框如:您的賬號在別處登錄,請重新登陸!感興趣的可以了解一下2022-12-12