如何在android程序中限制WebView内部

时间:2013-03-21 05:36:26

标签: android android-webview

我希望将webView's limit限制在pixels初始化时声明的webView内。

View insertPoint = findViewById(R.id.layout);

WebView web = new WebView(this) ;
web.setBackgroundColor(Color.GRAY);
int lHeight = 200 ;
int lWidth = 200 ;


( (ViewGroup) insertPoint ).addView(web, lWidth, lHeight) ;

web.loadUrl("http://www.google.com");

编辑:

全屏由WebView拍摄,不在200px*200px内。

编辑:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity"
    android:id="@+id/layout" >



</LinearLayout>

3 个答案:

答案 0 :(得分:1)

您可以尝试使用此代码设置高度宽度:

            WebView w =new WebView(this);
            LayoutParams lp = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
            w.setLayoutParams(lp);
            w.getLayoutParams().width = 200;
            w.getLayoutParams().height = 200;
            ( (ViewGroup) insertPoint ).addView(w) ;

答案 1 :(得分:1)

如果您还添加以下行,您的代码也可以使用:

web.setWebViewClient(new WebViewClient());

否则您的代码将启动浏览器(全屏)。例如,如果单击“返回”,则应显示灰色框。

答案 2 :(得分:0)

是的,您的代码正常工作检查layout xml文件天气您已声明layout_widthlayout_height match_parentfill_parent,如果是,请将其更改为{{ 1}}它会起作用。

如果它有效,则将此布局代替您的布局,然后代码中没有任何错误 否则你的ur xml有问题。

wrap_content

活动类

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/layout"   >


</LinearLayout>