2012-03-23 10 views

Antwort

0

IOS unterstützt nur über UIWebView des stringByEvaluatingJavaScriptFromString Verfahren Einbahn JavaScript Kommunikation.

Sie können jedoch bidirektionale Kommunikation nachahmen, indem Sie einen periodischen Poller in Ihrem Obj C-Code einrichten, der eine JavaScript-Funktion aufruft, die einen Variablenwert zurückgibt, der durch einen JavaScript-Code auf der Webseite festgelegt wird. Abhängig vom Intervall Ihres Pollers werden Sie bemerkenswerte Verzögerungen in der Benutzeroberfläche bemerken.

+0

Wahrscheinlich nicht vollständig Understanding, aber wir müssten im Grunde ein NSTimer einrichten, die prüfen würde, ob ein Wert als Reaktion auf ein Ereignis innerhalb der UIWebView gefeuert wird? Wie würde ein Benutzer auf einen Link klicken, der von jQuery erfasst würde, der einen globalen_Wert setzen würde, und der Controller, der das UIWebView hat, würde einen pushViewController dafür machen? – timpone

+0

Gut. Der globale Wert kann eine Ganzzahl sein, die Sie bei jeder Ausführung der Aktion in JavaScript inkrementieren und die Sie auch im View-Controller verfolgen, damit Sie sie bei jedem Auslösen des Timers vergleichen können. Wenn der Wert anders ist, wissen Sie, dass etwas unternommen wurde. Sie können für jeden einzelnen Aktionstyp, den Sie überwachen möchten, einen separaten Wert angeben. –