在对话框

时间:2017-10-17 15:02:05

标签: android dialog android-webview

我正在尝试在WebView对话框中打开此网址:http://mtl2.liveatc.net/eham01_rdr_artip

但没有任何事情发生(与其他网址一切正常)。我只看到加载页面的应用程序,完成后 - 对话框消失。

这是我的代码:

Dialog dialog = new Dialog(AtcInfo.this);
dialog.setContentView(R.layout.web_dialog);
WebView wb = dialog.findViewById(R.id.webview);
wb.getSettings().setJavaScriptEnabled(true);
wb.loadUrl(listUrl.get(position));
wb.setWebViewClient(new WebViewClient() {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        view.loadUrl(url);

        return true;
    }

    @Override
    public void onPageFinished(WebView view, String url) {
        // TODO Auto-generated method stub
        pBar.setVisibility(View.INVISIBLE);
        super.onPageFinished(view, url);
    }
});

dialog.setCancelable(true);
dialog.show();

web_dialog.xml

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scroller"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:fillViewport="true" >
    <WebView
        android:id="@+id/webview"
        android:scrollbars="vertical"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</ScrollView>

我试图调整WebView的大小,但没有任何效果。我会感激任何帮助或暗示。

1 个答案:

答案 0 :(得分:1)

ScrollView设置固定的高度和宽度,并在android:layout_weight="1"中添加WebView作为额外属性。这应该符合你的目的。

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/scroller"
    android:layout_width="300dp"
    android:layout_height="300dp"
    android:layout_gravity="center"
    android:fillViewport="true">

    <WebView
        android:id="@+id/webview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:scrollbars="vertical" />
</ScrollView>

在我的模拟器中看起来像这样。

My emulator