Android Studio 中獲取屏幕寬度實例
獲取整個屏幕的寬度的實例
Point p = new Point(); //獲取窗口管理器 WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); wm.getDefaultDisplay().getSize(p); screenWidth = p.x; // 屏幕寬度
補充知識:Android屏幕適配之動態(tài)設(shè)置單個控件的寬高比例
前言:這個問題出現(xiàn)在我做平板項目的時候,需要橫排顯示一張圖片以及其他控件,如下圖:

要求圖、文各占一半大小,圖片的寬高比例目測是1:2。這種情況不適合把高度寫死,因為iPad的屏幕大小差異有些大,高度寫死圖片hin容易變形,因此我們就需要動態(tài)去設(shè)置這個圖片的寬高。
正題:首先我們已知圖片寬度是屏幕的一半,所以我們只要獲取圖片的寬度,然后設(shè)置高度為寬度的1/2即可。
img.post(new Runnable() {
@Override
public void run() {
int w = img.getWidth();
int h = w / 2;
img.setLayoutParams(new LinearLayout.LayoutParams(w, h));
}
});
這里用了post方法來延遲獲取寬度,是為了防止在img自身未完成測量的時候該方法過早調(diào)用,這種情況得到的寬度為0;
附加提示:如果你的控件有margin值,此時就不管用了,可以轉(zhuǎn)換為讓其父控件設(shè)置padding值。
以上這篇Android Studio 中獲取屏幕寬度實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Android三方依賴沖突Gradle中exclude的使用
這篇文章主要介紹了Android三方依賴沖突Gradle中exclude的使用,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
Android中ConstraintLayout約束布局的最全詳細解析
ConstraintLayout是Google在Google?I/O?2016大會上發(fā)布的一種新的布局容器(ViewGroup),它支持以靈活的方式來放置子控件和調(diào)整子控件的大小,下面這篇文章主要給大家介紹了關(guān)于Android中ConstraintLayout約束布局詳細解析的相關(guān)資料,需要的朋友可以參考下2022-08-08
Android編程之點擊按鈕的響應(yīng)方式小結(jié)【3種方式】
這篇文章主要介紹了Android編程之點擊按鈕的響應(yīng)方式,結(jié)合實例形式分析總結(jié)了常用的三種按鈕響應(yīng)方式,需要的朋友可以參考下2017-02-02
Android中系統(tǒng)默認(rèn)輸入法設(shè)置的方法(輸入法的顯示和隱藏)
這篇文章主要介紹了Android中系統(tǒng)默認(rèn)輸入法設(shè)置的方法(輸入法的顯示和隱藏)的相關(guān)資料,需要的朋友可以參考下2016-01-01
關(guān)于Android 6.0權(quán)限的動態(tài)適配詳解
Android 6.0版本(Api 23)推出了很多新的特性, 大幅提升了用戶體驗, 同時也為程序員帶來新的負(fù)擔(dān). 動態(tài)權(quán)限管理就是這樣, 一方面讓用戶更加容易的控制自己的隱私, 一方面需要重新適配應(yīng)用權(quán)限,本文介紹了關(guān)于Android 6.0權(quán)限動態(tài)適配的相關(guān)資料,需要的朋友可以參考下。2017-11-11

