2016-02-04 15 views
19

wideo problemu z innym użytkownikiem, ale jego samegoAndroid białe tło gdy klawiatura zanika

http://imgur.com/ca2cNZv

Mam obraz tła ustawić w następujący sposób:

.pane { 
    background-image: url("../img/inner-banner-bg.jpg"); 
    background-repeat: repeat; 
    -webkit-background-size: cover; 
    -moz-background-size: cover; 
    background-size: cover; 
} 

i moim config.xml

<preference name="Fullscreen" value="false"/> 

Teraz problem, który mam, to kiedy klawiatura zniknie po tym, jak wykonam polecenie done/search, pozostawia białe tło dla 0.5 podczas przejścia dla przestrzeni, którą zajmuje klawiatura i wygląda trochę źle.

Gdy klawiatura się zamyka, unshrinks, ale pozostawia białą przerwę. Jak mogę sprawić, by klawiatura nie zmniejszała widoku za tłem?

Kiedy ustawić

<preference name="Fullscreen" value="true"/> 

To nie zdarza. Używam również klawiatury Ionic Plugin.

W każdym razie mogę sprawić, że przejście klawiaturowego zanikania nie wyświetla białego tła?

Edycja: Oto moje android ustawienia

<activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize"> 
      <intent-filter android:label="@string/launcher_name"> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

i moi Ustawienia konfiguracyjne

<access launch-external="yes" origin="geo:*"/> 
    <allow-intent href="geo:*"/> 
    <preference name="webviewbounce" value="false"/> 
    <preference name="UIWebViewBounce" value="false"/> 
    <preference name="DisallowOverscroll" value="true"/> 
    <preference name="android-minSdkVersion" value="16"/> 
    <preference name="BackupWebStorage" value="none"/> 
    <preference name="SplashScreen" value="screen"/> 
    <preference name="SplashScreenDelay" value="4000"/> 
    <preference name="FadeSplashScreen" value="false"/> 
    <preference name="ShowSplashScreenSpinner" value="true"/> 
    <preference name="KeyboardShrinksView" value="false"/> 

A w Package.json

"dependencies": { 
    "gulp": "^3.5.6", 
    "gulp-sass": "^2.0.4", 
    "gulp-concat": "^2.2.0", 
    "gulp-minify-css": "^0.3.0", 
    "gulp-rename": "^1.2.0" 
    }, 
    "devDependencies": { 
    "bower": "^1.3.3", 
    "gulp-util": "^2.2.14", 
    "shelljs": "^0.3.0" 
    }, 
    "cordovaPlugins": [ 
    "cordova-plugin-device", 
    "cordova-plugin-console", 
    "cordova-plugin-whitelist", 
    "cordova-plugin-splashscreen", 
    "cordova-plugin-statusbar", 
    "cordova-plugin-geolocation", 
    "cordova-plugin-network-information", 
    "ionic-plugin-keyboard" 
    ], 
    "cordovaPlatforms": [ 
    "android", 
    "ios" 
    ] 

Moim zdaniem internetowej używam jonowy-view i zawartość jonów

<ion-view> 
    <ion-content class="has-header has-tabs"> 
+0

Możliwe obejście tego, że białe tło nie znika, to dodanie następującego kodu, w którym chcesz zamknąć klawiaturę, na przykład w module obsługi zdarzeń, aby wprowadzić naciśnięcie klawisza lub wysłać formularz. Musisz również dodać '$ ionicScrollDelegate' jako zależność. 'if (cordova) {cordova.plugins.Keyboard.close(); } $ ionicScrollDelegate.getScrollView(). resetScrollView() ' – Webruster

+0

Bez radości, nadal dostaję skok na stronie z białym tłem – StevieB

+0

czy sprawdziłeś, debugger idzie do tej linii? – Webruster

Odpowiedz

8

W AndroidManifest.plik xml spróbuj ustawić windowSoftInputMode atrybut adjustNothing:

android:windowSoftInputMode="adjustNothing" 

on pracował dla mojego projektu jońskim, unikając Resize Cordova WebView gdy klawiatura jest włączony.

+1

Ok to naprawia problem i jest bliższe rozwiązaniu, jedyne co jest w tym przypadku, to bez zmiany rozmiaru, czasami trudno jest zobaczyć pole wejściowe, ale sądzę, że to ograniczenie tego wyboru. – StevieB

+1

Cholera, to takie miłe, że nie widzę białe tło i migotanie, ale fakt, że nie ma zmiany rozmiaru, oznacza, że ​​czasami nie widzę przycisków na moich pop-upach, więc nie jest to wspaniałe doświadczenie dla użytkownika. – StevieB

+0

Niestety, wydaje mi się, że biały plik bkgrd na klawiaturze to problem z przeglądarką internetową Cordova, który zbyt wolno zmienia rozmiar – beaver

0

Dodaj następujący kod w swoim "App.js". dodać

$window.addEventListener('native.keyboardhide', function (event) { 
    $rootScope.$broadcast('native.keyboardhide', event); 
}); 

przy wywołaniu metody app.run() przy użyciu zależności $ window i $ rootScope. również, dodaj

if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) { 
     cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true); 
     cordova.plugins.Keyboard.disableScroll(true); 
    } 

w $ ionicPlatform.ready().

Należy sprawdzić, czy kod jest aktualizowany, sprawdzając aplikację. Jeśli nie jest aktualizowany, spróbuj usunąć i dodać platformę i przebudować aplikację.

+0

Brak efektu białe tło, gdy klawiatura zanika – StevieB

+0

Powoduje to, że klawiatura zasłania dolny obszar, elementy nie są widoczne pod spodem i nie można przewinąć do – Chisko

0

Hej istnieje proste obejście tego

trzeba dodać przepełnienia-Scroll = "false" do jonów zawartości powinno to naprawić

<ion-content class="padding has-header has-footer" overflow-scroll="false"> 

związanych z tematem Ionicforum

+0

Próbowałem nadal, po tym, jak klawiatura znika, co zajmuje około 0,5 sekundy, jest białym tłem, które zajmuje przestrzeń klawiatury, a następnie znika. – StevieB

+0

Czy to dziwne, czy obejrzałeś post na forum?niektórzy ludzie mówili, że używanie jonowego przewijania zamiast zawartości jonowej zadziałało dla nich przepełnienie-przewijanie działało dla mnie, ponieważ miałem ten sam problem – stackg91

+0

Yup próbował również przewijania jonów, ale nie zrobił różnicy. Za każdym razem, gdy klawiatura się zamyka, mam migotanie białego tła. – StevieB

1

To jest twój windowBackground zerkanie przez. Prawdopodobnie rysujesz na białym tle swojego motywu z tym turkusowym tłem. Zmodyfikuj motyw, aby zawierał lepszy kolor tła i jeśli to możliwe, usuń tło z układu, aby poprawić wydajność rysowania.

<style name="MyAppTheme" parent="Theme.DeviceDefault.NoActionBar"> 
    ... 
    <item name="android:windowBackground">#ff000000</item> 
    ... 
</style> 
+0

. Czy informacje na temat aplikacji Ionic są dostępne? – StevieB

+0

Nigdy nie widziałem żadnego styles.xml w projekcie Cordova (lub Ionic). Mam plik styles.xml w pluginach Xwalk dla Cordova, ale to kolejna rzecz ... – beaver

1

Put:

<style name="AppTheme" parent="AppBaseTheme"> 
    <item name="android:windowBackground">@drawable/gradient</item> 
</style> 

W styles.xml source

+0

Nie widzę stylów xml w dowolnym miejscu w projekcie jonowym – StevieB

0

Jego zdarzyć, ponieważ rozmiar okna re sam, aby zrobić miejsce na miękkiej powierzchni wejściowej

użytku android:windowSoftInputMode="adjustNothing" w AndroidManifest. xml

<activity android:windowSoftInputMode="adjustNothing" 
.. 
... 
</activity> 
Powiązane problemy