私の現在のモノドロイドプロジェクトには2つの問題があります.1つはAssetsからの読み込みであり、もう1つは生成されたWebページが表示され、それらの相互関連性が原因です。WebViewと資産の問題
資産の問題は十分に簡単で、ファイルが見つかりません。現在のコードは次のようになります
Android.App.Application.SynchronizationContext.Post(delegate
{
string uri = "file:///android_asset/StyleSheet.css";
string settings = string.Empty;
using (var input = c.Assets.Open(uri))
using (StreamReader sr = new System.IO.StreamReader(input))
{
settings = sr.ReadToEnd();
}
string CSS = "<html><head><style>" + settings + "</style></head><body style='height:600px;background: url(Back-AQHA.jpg)' >";
retStr = CSS + tableData.Content + "</body></html>";
callback(retStr);
}, null);
これは、ファイルが見つからないため、sr.ReadToEnd()行で消滅します。私は、資産のディレクトリにアクセスして読み込むことができるようにするためにすべての権限が正しく設定されている。
Cは、ファイルが読み込まれ、戻されていたと仮定して、方法今
に渡されただけでコンテキストです呼び出し側に、それは今(アプリ内でページを生成し、それをバック渡すことでこれをテストして)表示されないコンテンツが渡され、レンダリングされた場合...ウェブビューアコードは、標準
public class webservice_webview : Activity
{
WebView web_view;
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.webview);
string res = base.Intent.GetStringExtra("content");
if (res.Length > 0)
{
web_view = FindViewById<WebView>(Resource.Id.webviewer);
web_view.Settings.JavaScriptEnabled = true;
web_view.LoadData(res, "text/html", null);
web_view.SetWebViewClient(new websiteviewClient());
}
else
return;
}
private class websiteviewClient : WebViewClient
{
public override bool ShouldOverrideUrlLoading(WebView view, string url)
{
view.LoadData(url, "text/html", null);
return true;
}
}
public override bool OnKeyDown(Android.Views.Keycode keyCode, Android.Views.KeyEvent e)
{
if (keyCode == Keycode.Back && web_view.CanGoBack())
{
web_view.GoBack();
return true;
}
return base.OnKeyDown(keyCode, e);
}
}
}
を取れていますその結果はすべて、urlデータ; text/html; null、[generated html]が移動したか、またはなくなったというデッドWebページです。生成されたページを表示するにはどうすればよいですか?あなたの資産をチェックする価値があるかもしれません
おかげ
ポール