軟鍵盤彈出+popupWindow的問題
- popupWindow上有輸入框,我希望在軟體盤彈出的時候popupWindow可以上移,蒐集了很多資料,有的說通過螢幕的大小減去Activity顯示的大小,就是鍵盤的高度,然後動態設定popupWindow的大小,但是沒有實現.因為popupWindow的大小就是螢幕的大小,所以此時Activity顯示的大小就是0.
/**
2. 獲取鍵盤的高度,設定scrollview的大小
*/
public void setScrollViewHight() {
ll_root.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
/**
* the result is pixels
*/
@Override
public void onGlobalLayout() {
Rect r = new Rect();
//獲取可見高度
int visiableHeight = r.bottom - r.top;
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) myScrool.getLayoutParams();
//獲取當前控制元件的佈局物件
params.height = visiableHeight;//設定當前控制元件佈局的高度
myScrool.setLayoutParams(params);//將設定好的佈局引數應用到控制元件中
ll_root.getWindowVisibleDisplayFrame(r);
int screenHeight = ll_root.getRootView().getHeight();
int heightDifference = screenHeight - visiableHeight;
Log.e("可見高度是", visiableHeight + "");
Log.e("Keyboard Size" , "Size:" + heightDifference);
//boolean visible = heightDiff > screenHeight / 3;
}
});
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
所以我使用了另一種方式,就是設定popupWindow的屬性,據說這兩個屬性的位置不可以變,我沒有測試,但是設定之後也沒其效果,之後我就通過問一些大神知道了popupWindow必須被scrollview包裹才行,不然不可以彈出.
menuWindow.setSoftInputMode(PopupWindow.INPUT_METHOD_NEEDED);
menuWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
- 1
- 2
也有說找到這個activity的配置檔案設定這個屬性android:windowSoftInputMode = “stateVisible|adjustResize”但是我的也沒有效果,之後沒有測試,可能是我開始沒有用scrollview做頂級佈局吧.如果是”adjustPan|stateHidden”則鍵盤彈出佈局不會上移,還有其他的屬性,這裡就不一一例舉了.
- EditText不能輸入小數,只要把android:inputtype=”number”(整數),可以number改為numberDecimal即可,還有其他的edittext的設定可以參照以下網址進行動態設定
相關推薦
軟鍵盤彈出+popupWindow的問題
popupWindow上有輸入框,我希望在軟體盤彈出的時候popupWindow可以上移,蒐集了很多資料,有的說通過螢幕的大小減去Activity顯示的大小,就是鍵盤的高度,然後動態設定popupWindow的大小,但是沒有實現.因為popupWindow的大小就是螢幕的大
軟鍵盤彈出後,Activity變形,popupWindow遮蓋住。
"adjustUnspecified" It is unspecified whether the activity's main window resizes to make room for the soft keyboard, or whether the c
軟鍵盤彈出後,Activity變形,popupWindow遮蓋住
"adjustUnspecified" It is unspecified whether the activity's main window resizes to make room for the soft keyboard, or whether the con
安卓移動端軟鍵盤彈出問題解決方案
log logs 情況 sel clas scrollto refs ext 題解 移動端開發難免拿到輸入框居中或者位於底部的情況,ios 端,軟鍵盤能夠按正常預期向上滑動(這裏有個問題,當 input 聚焦時,彈出軟鍵盤,input 上滑,此時屏幕是具有滾動效果的,還沒找
解決 安卓手機 軟鍵盤 彈出布局的問題
bsp doc html document 軟鍵盤 cti nbsp lur script 一、 js <script type="text/javascript">$(‘body,html‘).height(document.body.clientHeig
解決安卓手機上軟鍵盤彈出擠壓背景的問題
彈出 鍵盤 color col 軟鍵盤 func class div res demo: // 解決本頁面軟鍵盤彈窗背景擠壓的問題 var clientHeight = document.documentElement.clientHeight || documen
Android軟鍵盤彈出,覆蓋h5頁面輸入框問題
問題 過多 繼承 col 鍵盤 代碼 chrom 技術 fff 之前我們在使用vue進行 h5 表單錄入的過程中,遇到了Android軟鍵盤彈出,覆蓋 h5頁面 輸入框 問題,在此進行回顧並分享給大家: 系統:Android 條件:當輸入框在可視區底部或者偏下的位置 觸發
KeyboardUtil【軟鍵盤彈出後輸入框上移一定的高度】
together true 添加 存儲 oge 底部 putty 如果 original 版權聲明:本文為HaiyuKing原創文章,轉載請註明出處! 前言 演示獲取軟鍵盤高度並保存,然後根據輸入框的原有位置是否被軟鍵盤擋住了,如果被擋住了則將整體頁面上移一定的高度,當
周記3——解決fixed屬性在ios軟鍵盤彈出後失效的bug
images fff 發現 apple load http none orien 兩種方法 這周在做空間(“類似”qq空間)項目。首頁是好友發表的說說,可以針對每條說說進行評論,評論框吸附固定在屏幕底部。此時,Bug來了...在ios上,軟鍵盤彈出後fixed屬性失效了
Android EditText彈出軟鍵盤實現頁面標題頭不動,軟鍵盤彈出在編輯框下面
為了實現EditText編輯的時候彈出軟鍵盤標題頭不動,底部編輯框上移,想了好多種方法,也百度,問同事每種辦法都有問題,在這總結一下,希望能幫助到大家。 上圖看下效果: 可以看到彈出鍵盤的時候,只有EditText在軟鍵盤上面,還有一個藍色點,這個隨後再說。 用Relative
移動端web頁面底部固定元素(軟鍵盤彈出)解決方案
底部固定的輸入框,如圖: 解決方案如下 <div> <Header/> // absolute, top:0 <Footer/> // absolute, bottom:0 <Content/> // absolute
android 軟鍵盤彈出 佈局上移動
這是軟體盤和actiivty主視窗搶空間造成的,需在AndroidManifest.xml裡為activity配置windowSoftInputMode屬性併為其選擇屬性值。 如下: <activity android:name="...Activity" a
HTML 在手機軟鍵盤彈出頂起影響頁面佈局
H5在手機端,尤其是安卓手機,如果用了定位或者用了百分比的元素,很容易在鍵盤彈起後引起頁面錯亂,其中分2種情況: **情況1:**在頁面中用了position: fixed; bottom: 0;。把元素定位在頁面的底部,可是這時候鍵盤彈起後,該定位元素也會跟著鍵盤一起彈起。網上大多數答
Android軟鍵盤彈出,介面整體上移終極解決方式
今天在應測試要求:軟鍵盤彈出不能遮擋EditView,在網上找了各種方案,基本都不行,比如: android:windowSoftInputMode=“adjustResize|stateHidden” 可能在一般的頁面是可以用吧。 下面來說一個曲線救國的方案,
軟鍵盤彈出對背景圖片的擠壓和fixed定位的影響
1:對背景圖片的影響 其實我們可以在頁面初始化的時候把頁面高度設定死,而不用設定height: 100% 這種 // 獲取瀏覽器的高度 let h = document.body.clientHeight || document.documentElement.clientHeigh
Android優雅地判斷軟鍵盤彈出狀態
Android優雅地判斷軟鍵盤彈出狀態 一、為什麼要判斷軟鍵盤彈出狀態 二、已有的判斷方案 三、設計新的方案 四、實現效果 五、完整程式碼 六、核心程式碼 七、下載地址 一、為什麼要
Android 軟鍵盤原理 軟鍵盤彈出時與介面的互動
本文轉載於http://hkp.iteye.com/blog/1205492、http://blog.sina.com.cn/s/blog_6a156a1b0101547k.html,講述Android軟鍵盤原理,及彈出時與介面的互動方式。軟鍵盤的本質是什麼?軟鍵盤其實是一個
Android筆記:軟鍵盤彈出遮蓋原來介面的佈局控制元件
給Activity設定軟鍵盤出現與Activity之間的互動模式: 1.在onCreat中的setContent方法之前寫入: getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJ
軟鍵盤彈出佈局與edittext一起上移
Androidmanifest的activity設定成 <activity android:name="com.lvcaiye.yingji.im.ChattingActivity" android:windowSoftInputMo
ScrollView中軟鍵盤彈出依然遮住控制元件
在一個Activity頁面中,常會有需要使用者輸入的文字控制元件EditText,EditText獲取焦點後,彈出的軟鍵盤往往會遮擋底部的其他控制元件,通常處理方法是: 1、xml佈局中,使用ScrollView包含使用者控制元件; 2、Manifest檔案