2014-09-19 72 views
1

我正在處理Android/iOS應用程序。當鍵盤打開的登錄信息(用戶名和密碼)都被收縮在一起,它看起來像這樣:Android - 鍵盤壓縮我的視圖

enter image description here

normaly它不應該被壓縮。它應該向上移動,並讓我清楚地看到我正在輸入的內容。

enter image description here

是的,所以我不知道,做什麼。我試圖在整個應用程序中使用百分比(寬度/高度) - 也許這就是爲什麼我的View不會移動但縮小的原因?

我看着這兒的堆棧,發現像一些建議:

<activity 
    ... 
    android:windowSoftInputMode="adjustPan"> 
</activity> 

adjustResize代替,但沒有那爲我工作。在iOS上一切正常。我想讓視圖做的是他只是稍微移動一下,沒有任何東西被調整。

我希望你能幫助我,如果你需要更多的信息,請讓我知道,我會更新或評論我的問題。

  • 科爾多瓦3.5
  • 的jQuery/jQuery的移動
  • 插件:相機/控制檯/設備/對話框/文件傳輸/文件/ inappbrowser /閃屏/狀態欄/振動/地理位置/網絡信息
  • Eclipse與Genymotion仿真器
  • 設備:Galaxy Note 10.1,4.4.2;的Xperia Z2 4.4.2

這是我Androidmanifest是什麼樣子:

<?xml version='1.0' encoding='utf-8'?> 
<manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="1.0" package="de.*****************.de" xmlns:android="http://schemas.android.com/apk/res/android"> 
    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name"> 
     <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:screenOrientation="portrait" android:label="@string/activity_name" android:launchMode="singleTop" android:name="********" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustPan"> 
      <intent-filter android:label="@string/launcher_name"> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 
    <uses-sdk android:minSdkVersion="17" android:targetSdkVersion="20" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
</manifest> 
+0

試試這個::機器人:windowSoftInputMode = 「adjustPan | adjustResize」 – raja 2014-09-19 12:49:30

回答

3

我被卡住了同樣的問題,前幾天。

正如你所說,你已經給出了百分比的高度和寬度。

當出現android鍵盤時,窗口被調整大小,其高度爲不包括鍵盤大小的屏幕大小。

給予百分比高到你的頁面的主容器(即body標籤)將收縮你的頁面的高度的鍵盤出現時,

設置最小高度爲body標籤一次上document.ready爲我工作。

$(function(){ 

$("body").css("min-height",$(window).height()) 

}); 
+0

+1什麼,我想評論:):P – 2014-09-19 12:56:23

+0

謝謝您的回答傢伙,的IntelliJ Amiya和NaeemShaikh27--我將在晚上晚些時候對此進行測試。 – Sithys 2014-09-19 13:21:23

2

添加這個在你的清單中,我希望它能起作用。欲瞭解更多信息,請點擊HERE

android:windowSoftInputMode="stateUnchanged|adjustResize"

+1

這些數值對我來說不起作用,但'adjustPan'完成了訣竅 – 2016-09-06 03:53:07

+0

@AlvaroMontoro還行 – 2016-09-07 05:03:10