WebView使用(一) 无法显示内容、在fragment+activity中的使用

来源:互联网 发布:python 打印数组 编辑:程序博客网 时间:2024/05/15 21:54

在一个只有底部导航栏的activity中,动态切换4个fragment,在第一个fragment中我想使用一个webview加载后台的H5页面,就把WebView定义在了fragment的布局文件中,如下

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent">    <WebView        android:id="@+id/home_web"        android:layout_width="match_parent"        android:layout_height="wrap_content" /></FrameLayout>


activity的webview部分代码 是 

 

 home_web = fView(R.id.home_web);        //设置WebView属性,能够执行Javascript脚本        home_web.getSettings().setJavaScriptEnabled(true);        home_web.loadUrl(UrlManager.HomeUrl);        LogUtil.getInstance().Info("加载页面");        home_web.setWebViewClient(new HomeWebClient());
   public class HomeWebClient extends WebViewClient {        @Override        public boolean shouldOverrideUrlLoading(WebView view, String url) {            view.loadUrl(url);            return true;        }    }
以下是activity切换fragment的代码
fragmentTransaction = getFragmentManager().beginTransaction();                fragmentTransaction.replace(R.id.showFrag, new O2OFragment());                fragmentTransaction.commit();



 然而以上代码执行过后并没有显示 ,而放在activity中却能正常显示。我采用了网友的方法:

[java] view plain copy
  1. getFragmentManager().beginTransaction().add(android.R.id.content,one,"qe").commit();  
原来我使用的不是android.R.id.content这个值,而是设置到自己定义的一个。这样就能显示了,但是fragment的页面覆盖了底部的导航栏;  已解决: 在activity 的布局文件中,添加一个线性布局(也有朋友说加一行空白也行),加上id,然后传参到
 fragmentTransaction.replace(R.id.showFrag, new O2OFragment());
的 第一个参数上,这样就好了;

0 1
原创粉丝点击