WindowManager獲取寬和高

2021-09-29 12:21:52 字數 1668 閱讀 3706

實現implements viewmanager介面

內部類windowmanager.layoutparams

自有方法

abstract display getdefaultdisplay()

對應display的用法

void getcurrentsizerange(point outsmallestsize, point outlargestsize)

int getdisplayid()

int getflags()

int getheight()

void getmetrics(displaymetrics outmetrics)

string getname()

int getorientation()

int getpixelformat()

void getrealmetrics(displaymetrics outmetrics)

void getrealsize(point outsize)

void getrectsize(rect outsize)

float getrefreshrate()

int getrotation()

void getsize(point outsize)

int getwidth()

boolean isvalid()

string tostring()

abstract void removeviewimmediate(view view)

繼承自viewmanager的方法

abstract void addview(view view, viewgroup.layoutparams params)

abstract void removeview(view view)

abstract void updateviewlayout(view view, viewgroup.layoutparams params)

5.由於

activity.getwindowmanager().getdefaultdisplay().getwidth()//獲取螢幕寬度

activity.getwindowmanager().getdefaultdisplay().getheight()和getwidth() //獲取螢幕高度

已經過時 採取新的方法

display display = getwindowmanager().getdefaultdisplay();

point outsize = new point();

display.getsize(outsize);//不能省略,必須有

int screenwidth = outsize.x;//得到螢幕的寬度

int screenheight = outsize.y;//得到螢幕的高度

或者

isplaymetrics metrics = new displaymetrics();

getwindowmanager().getdefaultdisplay().getmetrics(metrics);

int height = metrics.heightpixels;

int width = metrics.widthpixels;

WindowManager實現懸浮可拖動效果

現在360手機衛士有個流量統計的效果,開啟流量統計後,在桌面上會出現乙個顯示流量的窗體,在任何介面都可以自由拖動。模仿這個功能,做了乙個統計手機訊號強度的demo,介面效果如下 從上面的截圖可以看出,當開啟手機訊號懸浮框後,預設在右上角會出現乙個小窗體 乙個圖示加上乙個訊號強度 這個窗體附在鎖屏上 ...

用WindowManager直接顯示View

我們android平台是乙個又乙個的activity組成的,每乙個activity有乙個或者多個view構成。所以說,當我們想顯示乙個介面的時候,我們首先想到的是建立乙個activity,然後所有的操作在activity裡面實現,或者是乙個dialog或者toast。這種方式固然簡單,但是在有些情況...

獲取控制代碼獲取指標

1.獲取應用程式指標 2.獲取主框架指標 或者cmainframe pmainframe cmainframe afxgetmainwnd 3.獲取選單指標 cmenu pmenu afxgetmainwnd getmenu 4.獲取工具欄狀態列指標 1 主框架中可以直接使用m wnd m wnds...