重慶分公司,新征程啟航
為企業提供網站建設、域名注冊、服務器等服務
為企業提供網站建設、域名注冊、服務器等服務
snackbar比toast好看多了,所以新的app我把所有的toast都替換成了snackbar。
10年的嘉祥網站建設經驗,針對設計、前端、開發、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。全網整合營銷推廣的優勢是能夠根據用戶設備顯示端的尺寸不同,自動調整嘉祥建站的顯示方式,使網站能夠適用不同顯示終端,在瀏覽器中調整網站的寬度,無論在任何一種瀏覽器上瀏覽網站,都能展現優雅布局與設計,從而大程度地提升瀏覽體驗。成都創新互聯從事“嘉祥網站設計”,“嘉祥網站推廣”以來,每個客戶項目都認真落實執行。
關于關閉鍵盤,android沒有直接提供給我們方法提供,可以使用如下方法
/**
* 關閉鍵盤
*/
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR1)
public static void disappearKeybaroad(Activity context) {
InputMethodManager imm = (InputMethodManager) context.getSystemService(INPUT_METHOD_SERVICE);
if (isSoftShowing(context)) {//先判斷鍵盤是否是開啟狀態,是則關閉
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
}
}
/**
* 判斷鍵盤是否在顯示
*/
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR1)
public static boolean isSoftShowing(Activity context) {
//獲取當前屏幕內容的高度
int screenHeight = context.getWindow().getDecorView().getHeight();
//獲取View可見區域的bottom
Rect rect = new Rect();
context.getWindow().getDecorView().getWindowVisibleDisplayFrame(rect);
return screenHeight - rect.bottom - getSoftButtonsBarHeight(context) != 0;
}
/**
* 底部虛擬按鍵欄的高度
*
* @return
*/
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR1)
private static int getSoftButtonsBarHeight(Activity activity) {
DisplayMetrics metrics = new DisplayMetrics();
//這個方法獲取可能不是真實屏幕的高度
activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
int usableHeight = metrics.heightPixels;
//獲取當前屏幕的真實高度
activity.getWindowManager().getDefaultDisplay().getRealMetrics(metrics);
int realHeight = metrics.heightPixels;
if (realHeight > usableHeight) {
return realHeight - usableHeight;
} else {
return 0;
}
}
關于這樣的做法相對于關閉鍵盤要簡單的多,只需要在manifests中為對應的activity加上這句配置即可:
這條配置的主要作用就是讓鍵盤不要擋住我們輸入的內容,對應的activity有了以上配置就可以實現上述效果了O(∩_∩)O