( Android ) Webview 刷新按钮

Posted

技术标签:

【中文标题】( Android ) Webview 刷新按钮【英文标题】:( Android ) Webview refresh button 【发布时间】:2015-12-20 17:21:03 【问题描述】:

我正在尝试创建一个按钮来重新加载 Webview,但是(对不起,我是 android 开发的新手)我没有找到方法(即使在 *** 中)

这里是 Mainactivity.java

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebView;
import android.widget.Button;

import static com.d4rkunicorn.partyhard.R.id.webView;


public class MainActivity extends ActionBarActivity 

    @Override
    protected void onCreate(Bundle savedInstanceState) 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        WebView webview = new WebView(this);
        setContentView(webview);
        webview.getSettings().setjavascriptEnabled(true);
        webview.loadUrl("url");
    


webview.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_
    android:layout_ android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
    android:id="@+id/webview.xml">

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_
    android:layout_

    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

    <Button
        android:layout_
        android:layout_
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:text="REFRESH"
        android:id="@+id/button" />

 </RelativeLayout>

感谢您的帮助

【问题讨论】:

使用按钮 onclick 并调用 webview 看这个,***.com/questions/2563325/… 已经试过了,没用 【参考方案1】:

在活动类中:

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebView;
import android.widget.Button;

import static com.d4rkunicorn.partyhard.R.id.webView;


public class MainActivity extends ActionBarActivity 

     WebView webview;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        webview = new WebView(this);
        setContentView(webview);
        webview.getSettings().setJavaScriptEnabled(true);
        webview.loadUrl("url");

        Button button = (Button) findViewById(R.id.button);
        
        button.setOnClickListener(new OnClickListener() 
            
            public void onClick(View v) 
                
                webview.reload();
                
            
        );
    


在布局 XML 中:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_
    android:layout_ android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
    android:id="@+id/webview.xml">

<WebView  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_
    android:layout_

    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true" />

    <Button
         android:id="@+id/button"
        android:layout_
        android:layout_
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:text="REFRESH"
        android:id="@+id/button" />

 </RelativeLayout>

【讨论】:

Android Studio 在构建时显示“错误:(29, 39) 错误:找不到符号类 OnClickListener” 导入android.view.View.OnClickListener;活动中 我的荣幸:)。请投票回答,以便对其他人有所帮助【参考方案2】:

有很多方法可以重新加载你的 webview:

    你可以在任何方法/动作事件中使用webview.loadUrl( "javascript:window.location.reload( true )" );

    webview.loadUrl(webview.toString); //getting the webview URL and use to reload ur web page

    webview.loadUrl(url); // you can use your desire URL to reload your web page

    webview.loadUrl( "onclick=\"window.history.back()"\");

【讨论】:

【参考方案3】:

您可以重新加载您的网页视图,也可以使用以下代码:

yourActivity.this.webView.loadUrl(url);

点击按钮。

【讨论】:

以上是关于( Android ) Webview 刷新按钮的主要内容,如果未能解决你的问题,请参考以下文章

添加自定义android webview错误页面

添加自定义 android webview 错误页面

webview怎么获取拦截页面中的Post数据?

android webview怎么实现下拉刷新

JavaScript 修改 webview 内容后,Android WebView 不刷新

必须两次加载数据才能在 Android 中刷新 WebView