到目前为止,我已经阅读了如何在webview中加载“普通”html网页.. 到目前为止,我传递了包含我的文本文件的路径的URL,但它没有加载任何内容。 这是我的方法:
@Override
public void onSelected(String url) {
ViewerFragment viewer = (ViewerFragment) getSupportFragmentManager()
.findFragmentById(R.id.view_fragment);
if (viewer == null || !viewer.isInLayout()) {
Intent showContent = new Intent(getApplicationContext(),
ViewerFragment.class);
showContent.setData(Uri.parse(url));
startActivity(showContent);
} else {
viewer.updateUrl(url);
}
}
并且查看器片段得到了这个:
public class ViewerFragment extends Fragment{
private WebView viewer = null;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
viewer = (WebView) inflater
.inflate(R.layout.details_fragment, container, false);
return viewer;
}
public void updateUrl(String newUrl) {
if (viewer != null) {
viewer.loadUrl(newUrl);
}
}
}
但请继续关注此屏幕:
任何想法如何做到这一点? = /我已经尝试了谷歌搜索但没有找到关于它的很多信息...实际上几乎找不到。所以任何帮助都会受到赞赏。
答案 0 :(得分:6)
尝试阅读文本文件的内容,并在文字前加<html><body>
,然后追加</body></html>
,然后使用WebView
方法loadData(...)
。
示例:
StringBuilder sb = new StringBuilder("<html><body>");
sb.append(readTextFile());
sb.append("</body></html>");
myWebView.loadData(sb.ToString(), "text/html", "UTF-8");
public String readTextFile(String filename) {
// Open and read the contents of <filename> into
// a single string then return it
}