Verhindert die Bewegung der Benutzeroberfläche, wenn die Tastatur angezeigt wird

8

Ich arbeite an einer kleinen App, die Sencha Touch 2 für die Benutzeroberfläche verwendet. Im Moment laufe ich es in Safari auf meinem iPad und iPhone.

Mein Problem ist, dass Safari jedes Mal, wenn ich auf ein Textfeld tippe, die virtuelle Tastatur aufruft und die gesamte Webansicht vom Bildschirm nach oben schiebt.

Das sieht nicht sehr natürlich aus, da die obere Werkzeugleiste nicht mehr sichtbar ist.

Hier sind zwei Screenshots, die das Problem demonstrieren. Im zweiten Screenshot können Sie den Effekt sehen, wenn die Tastatur sichtbar ist.

Gibt es eine Möglichkeit, dieses Verhalten zu verhindern, und stattdessen Safari resize die Benutzeroberfläche?

  

  

    
BastiBen 16.05.2012, 13:20
quelle

5 Antworten

4

Leider will Apple dieses Verhalten, aber jemand schlug einen kleinen Hack mit window.scrollTo () vor:

%Vor%     
Alexander Müller 23.07.2012 06:39
quelle
1

Diesen Code in die Startfunktion von app.js einzufügen, funktionierte für mich:

%Vor%     
Murtuza 02.12.2015 06:28
quelle
0

Ich habe eine Lösung gefunden, die für mich funktioniert. Sie verschieben die obere Leiste in den Container.

%Vor%

Hoffe, das hilft.

    
SHEePYTaGGeRNeP 05.05.2014 10:13
quelle
-1

Sie müssen die Methode blur() für textfield

aufrufen %Vor%
  

Versuche, forcefully den Eingabefokus für das Feld zu verwischen.

    
Javascript is GOD 16.05.2012 14:44
quelle
-2

Wenn Sie HTML in Sencha Elemente verwenden, müssen Sie etwas Tag html entfernen. Oder können Sie Tag-Tags in den Quell-HTML-Code einfügen. Ich hoffe dir zu helfen. :)

    
hekomobile 16.05.2012 21:34
quelle

Tags und Links