編輯:關於Android編程
本文實例講述了Android編程實現獲取標題欄、狀態欄的高度、屏幕大小及模擬Home鍵的方法。分享給大家供大家參考,具體如下:
1. 獲取標題欄高度:
/**
* 獲取標題欄的高度
*
* @param activity
* @return
*/
public int getTitleHeight(Activity activity) {
Rect rect = new Rect();
Window window = activity.getWindow();
window.getDecorView().getWindowVisibleDisplayFrame(rect);
int statusBarHeight = rect.top;
int contentViewTop = window.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight = contentViewTop - statusBarHeight;
return titleBarHeight;
}
2. 獲取狀態欄的高度:
/**
*
* 獲取狀態欄高度
*
* @param activity
* @return
*/
public int getStateHeight(Activity activity) {
Rect rect = new Rect();
activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
return rect.top;
}
3. 屏幕大小:
/**
* 獲取屏幕寬高
*
* @param activity
* @return int[0] 寬,int[1]高
*/
public int[] getScreenWidthAndSizeInPx(Activity activity) {
DisplayMetrics displayMetrics = new DisplayMetrics();
activity.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
int[] size = new int[2];
size[0] = displayMetrics.widthPixels;
size[1] = displayMetrics.heightPixels;
return size;
}
4. 模擬Home鍵:
/**
* 模擬home鍵
*
* @param context
*/
public void goToDestop(Context context) {
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addCategory(Intent.CATEGORY_HOME);
context.startActivity(intent);
}
希望本文所述對大家Android程序設計有所幫助。
深入Android線程的相關問題解惑
一個應用只有一個線程在默認情況下,更確切的講一個進程中只有一個線程,這跟其他語言,比如C/C++,Java等是一致。也就是說在Android應用程序裡面一個進程只有一個線
Mac下使用Eclipse實現Android中調用C/C++(NDK)基礎詳細教程
需求NDK是由谷歌娘提供的,某種意義上就是可以讓android使用c開發的第“三”方sdk,所以,正常來說eclipse是沒有配置這個東西的,當然
Android 圖像異步加載之Android-Universal-Image-Loader
概述:項目地址:https://github.com/nostra13/Android-Universal-Image-Loader UIL(Universal-Imag
詳解代理模式
一 摘要晚上看了關於代理模式的一篇文章,寫的非常生動,來過來分享給大家.這裡我就PHP代理模式給大家進行詳細說明.下面我們來看一看這幾天王寶強妻子出軌經紀人事件惹盡了眼球
我的Android進階之旅------)Android編譯錯誤java.util.zip.ZipException: duplicate entry的解決方法
今天在Android Studio中把另外一個項目引入當前項目,編譯的時