android webview占据整个屏幕

 手机用户2602881441 发布于 2023-01-20 15:32

我是开发Android应用程序的新手,我正在制作一个基本的Web浏览器.到目前为止,我已经或多或少地按照我想要的方式工作了.我遇到的问题是一些网站加载全屏并覆盖我的按钮和editText的URL.例如reddit.com或notcot.org等网站显示在webview的给定区域,但facebook.com或yahoo.com等网站将重新加载并占据整个屏幕,覆盖我的按钮和editText栏,让我使用模拟器返回按钮而不是我制作的按钮.我真的不确定问题是什么,因为它似乎只发生在一些网站而不是其他网站.这是XML:




    

    

   

       

  

   


而Java代码是

import java.net.MalformedURLException;
import java.net.URL;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.widget.EditText;
import android.widget.ImageButton;

public class ShowWeb extends Activity implements OnClickListener 
{
ImageButton forward,back,go;
WebView wv;
String urlString;
EditText et;


@Override
protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_show_web);
    forward = (ImageButton)findViewById(R.id.forwardButton);
    forward.setOnClickListener(this);
    back = (ImageButton)findViewById(R.id.backButton);
    back.setOnClickListener(this);
    go = (ImageButton)findViewById(R.id.goButton);
    go.setOnClickListener(this);
    wv=(WebView)findViewById(R.id.webBrowser);
    wv.setInitialScale(50);
    wv.setVerticalScrollBarEnabled(true);
    wv.setHorizontalScrollBarEnabled(true);
    wv.loadUrl("http://www.google.com");
    et=(EditText)findViewById(R.id.editText1);
    et.setHorizontalScrollBarEnabled(true);
    et.setOnKeyListener(new View.OnKeyListener() 
    {
         public boolean onKey(View v, int keyCode, KeyEvent event) 
         {
         if((event.getAction()==KeyEvent.ACTION_DOWN)&& 
                 keyCode==KeyEvent.KEYCODE_ENTER)
         { 
             try
             {
               URL url = new URL(et.getText().toString());
               urlString=url.toString();
               wv.setInitialScale(50);
               wv.loadUrl(urlString);

             }
             catch(MalformedURLException e)
             {
                urlString = et.getText().toString(); 
                wv.setInitialScale(50);
                wv.loadData(urlString, "text/html", "UTF-8");


             }
             return true;
         }        
         else    
             return false;
         }
    }
    );
    wv.getSettings().setJavaScriptEnabled(true);

}

@Override
public boolean onCreateOptionsMenu(Menu menu) 
{
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.show_web, menu);
    return true;
}


@Override
public void onClick(View v) 
{
    switch(v.getId()) 
    {
        case R.id.forwardButton:
            if(wv.canGoForward())
                wv.goForward();
                et.setText(wv.getUrl());
            break;
        case R.id.backButton:
            if(wv.canGoBack())
                wv.goBack();
                et.setText(wv.getUrl());

            break;
            case R.id.goButton:
            wv.setInitialScale(50);
            wv.loadUrl(urlString);

    }

}

}

感谢任何关于我没有看到的提示或建议.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有