1. JavaScript :input框輸入時, 手機虛擬鍵盤把布局頂上去 下不來了!
布局用下min-height設置下最小高度試試
2. 怎樣實現讓輸入框隨著鍵盤上浮或者返回
上下符號加大數字或直接選中它,然後在鍵盤上輸入你想要的數字如:15或35等……之後點下面的「確定」「
3. 鍵盤輸入框頂上去,是怎麼實現的
AndroidManifast中設置要此功能的Activity添加屬性android:windowSoftInputMode="adjustPan",這樣軟鍵盤覆蓋到界面上。 android:windowSoftInputMode="adjustResize",這樣軟鍵盤彈出會擠壓界面
4. 鍵盤到上面遮住輸入框,怎麼解決
鍵盤擋住了輸入框,能不能把輸入框頂到鍵盤之上.可以讓它顯示出來
首先需要在代理方法 - (void)textViewDidBeginEditing:(UITextView *)textView 中來處理。 這時需要你移動整個view的frame上移,而不是移動當前的文本框的位置。 為了移動效果的流暢,最好把修改frame的動作放到動畫里來做 CGRect curFrame=self...
--------------------
IOS中輸入框被軟鍵盤遮擋的解決辦法
標簽: iosuiviewkeyboardfile
做iOS開發時,難免會遇到輸入框被鍵盤遮掩的問題。上網上搜索了很多相關的解決方案,看了很多,但是由衷的覺得太麻煩了。
有的解決方案是將視圖上的所有的東西都添加到一個滾動視圖對象( UIScrollView )中,然後滾動視圖實現輸入框不被軟鍵盤覆蓋,個人覺得此方案好是好,但是太過麻煩。
有的解決方案是通過一個通知 UIKeyboardDidShowNotification 去實現的,需要用到事件監聽,而且需要自己定義並實現「將要開始編輯」與「結束編輯」這兩個監聽事件中的方法。本人也覺得很麻煩。
參考了很多方法,都不是太理想。自己研究了一下,既然軟鍵盤(Keyboard)出現與否是跟輸入框(UITextField)緊密關聯的。所以自己找到一個解決方案,沒有上述兩種方案那麼麻煩,只需實現代理UITextFieldDelegate中的三個方法即可。
實現方法:
1)將輸入框的代理設置為self
(在lb文件中將輸入框的delegate設置為File』s Owner 。或者使用代碼textField.delegate = self;
2)將輸入框所對應的ViewController.h設置實現了UITextFieldDelegate協議
在ViewController.m文件中實現UITextFieldDelegate的三個方法即可:
[cpp] view plain
//開始編輯輸入框的時候,軟鍵盤出現,執行此事件
-(void)textFieldDidBeginEditing:(UITextField *)textField
{
CGRect frame = textField.frame;
int offset = frame.origin.y + 32 - (self.view.frame.size.height - 216.0);//鍵盤高度216
NSTimeInterval animationDuration = 0.30f;
[UIView beginAnimations:@"ResizeForKeyboard" context:nil];
[UIView setAnimationDuration:animationDuration];
//將視圖的Y坐標向上移動offset個單位,以使下面騰出地方用於軟鍵盤的顯示
if(offset > 0)
self.view.frame = CGRectMake(0.0f, -offset, self.view.frame.size.width, self.view.frame.size.height);
[UIView commitAnimations];
}
//當用戶按下return鍵或者按回車鍵,keyboard消失
-(BOOL)textFieldShouldReturn:(UITextField *)textField
{
[textField resignFirstResponder];
return YES;
}
//輸入框編輯完成以後,將視圖恢復到原始狀態
-(void)textFieldDidEndEditing:(UITextField *)textField
{
self.view.frame =CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
}
方法很簡單吧?請注意一定不要忘記設置輸入框的代理delegate哦
------------------------------
HTML5 虛擬鍵盤出現擋住輸入框的解決辦法
下面我們來看一篇關於HTML5 虛擬鍵盤出現擋住輸入框的解決辦法,希望這篇文章能夠幫助到各位朋友,有興趣的同學可以進來看看吧.
1,問題描述
我們使用 H5 做移動 App,或者進行移動網站開發時。如果文本輸入框在整個頁面的下方,當我們點擊輸入框要輸入文字時,系統彈出的虛擬鍵盤就會將輸入框給擋住。(這個只有在Android 系統下會有這個問題,iOS 系統會自動將整個頁面上移動。)
2,解決辦法
我們可以藉助元素的 scrollIntoViewIfNeeded() 方法。這個方法執行後如果當前元素在視口中不可見,則會滾動瀏覽器窗口或容器元素,最終讓它可見。如果當前元素在視口中已經是可見的,這個方法什麼也不做。
3,樣例代碼
這里使用了 jQuery 綁定了所有輸入框(textinput、textarea)的點擊事件,這樣當輸入框被點擊後就調用它的 scrollIntoViewIfNeeded() 方法,保證輸入框可見。(延遲400毫秒出現時有些 Android 手機鍵盤出現的比較慢)
//防止鍵盤把當前輸入框給擋住
$$('input[type="text"],textarea').on('click', function () {
var target = this;
setTimeout(function(){
target.scrollIntoViewIfNeeded();
console.log('scrollIntoViewIfNeeded');
},400);
});
5. 急!!輸入法怎麼跑到上面去了
原因是開啟了游標跟隨。解決方法為在輸入法設置中取消掉游標跟隨,再把輸入法選字欄給拖到指定位置,之後輸入法選字欄就會固定在這個地方,這里使用QQ五筆輸入法演示操作的流程:
一、首先切換QQ五筆輸入法,然後右鍵點擊輸入法狀態欄上的空白處,右鍵菜單中點擊「屬性設置」。
6. web頁面 input輸入框在鍵盤上面的是怎麼實現的如圖
這個應該是浮動層,在察覺到頁面的可視化高度發生變化,會自動調整顯示在頁面的最低部。
7. 我打字的那個框為什麼跑到上面去了
原因:輸入法開啟了「游標跟隨」功能。開啟該功能後,候選欄會一直緊挨著文字輸入位置。只需關閉該功能即可解決,下面演示QQ五筆關閉游標跟隨的操作方法:
一、首先使用滑鼠的右鍵點擊輸入法狀態欄上的空白位置。
8. android webview 為什麼去掉了通知欄,鍵盤就不能把輸入框頂在上面,會被鍵盤擋住
getWindow().setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
LogUtil.i("mainActivity", "basic_setting");
setContentView(R.layout.basic_config);
在你的 onCreate方法中加上上面的代碼試試看。
9. 鍵盤擋住了輸入框,能不能把輸入框頂到鍵盤之上.可以讓它顯示出來
首先需要在代理方法 - (void)textViewDidBeginEditing:(UITextView *)textView 中來處理。 這時需要你移動整個view的frame上移,而不是移動當前的文本框的位置。 為了移動效果的流暢,最好把修改frame的動作放到動畫里來做 CGRect curFrame=self...