Ответ 1
Чтобы вызвать код Javascript, запущенный в UIWebView из вашего приложения, используйте метод EvaluateJavascript, например:
myView.EvaluateJavaScript ("a = 1;");
Чтобы вернуться в свой код С#, единственным вариантом является подключение к свойству ShouldStartLoad следующим образом:
myView.ShouldStartLoad = myHandler;
[...]
bool myHandler (UIWebView webView, NSUrlRequest request, UIWebViewNavigationType navType)
{
// Determine what to do here based on the @request and @navType
}
Вы можете, конечно, использовать анонимные методы, если вы хотите легко получить доступ к локальным переменным:
myView.ShouldStartLoad = (webView, request, navType) => {
// Determine here what to do
}
В стороне Javascript, если вы хотите перезвонить в Mono, вы затем установите для свойства location.href "специальный" URL-адрес, например:
// Javascript code:
location.href = "myapp://action?par1=abc&par2=def"
Информация будет доступна на объекте запроса: request.Url.AbsoluteString