OK。私はどこにでもいるように見えましたが、私の小さな脳は活動をリフレッシュするより良い方法を理解できません。私が理解できる提案は素晴らしいでしょう。 :)
Javaコード:
package com.dge.dges;
import Android.app.Activity;
import Android.content.Intent;
import Android.os.Bundle;
import Android.view.View;
import Android.webkit.WebView;
import Android.widget.Button;
public class dgeActivity extends Activity {
WebView mWebView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings();
mWebView.loadUrl("http://www.websitehere.php");
Button newButton = (Button)findViewById(R.id.new_button);
newButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(dgeActivity.this, dgeActivity.class);
startActivity(intent);
}
});
}
}
そして、これがmain.xmlです
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/RelativeLayout"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:background="#000000"
>
<WebView
Android:id="@+id/webview"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:scrollbars="none"
/>
<Button
Android:id="@+id/new_button"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_alignParentBottom="true"
Android:layout_centerHorizontal="true"
Android:text="Refresh"
/>
</RelativeLayout>
アクティビティの後にアクティビティを重ねるだけのアイデアは好きではありません。 Webビューを更新する簡単な方法が必要です。助けてください。 :)
1)同じURLをリロードする場合:
_mWebView.loadUrl("http://www.websitehere.php");
_
したがって、完全なコードは
_newButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
dgeActivity.this.mWebView.loadUrl("http://www.websitehere.php");
}});
_
2)mWebView.reload()
を呼び出すこともできますが、リクエストがPOSTの場合、これがページを再ポストするため、GETでのみ正しく動作することに注意してください。
mWebView.reload();
を呼び出すことができます
最善の解決策は、webView.loadUrl( "javascript:window.location.reload( true )" );
を実行することです。これはすべてのバージョンで機能し、新しい履歴エントリは導入されません。
これは私のために働いた。
onCreate metodeの下に置く
Button button = (Button) findViewById(R.id.reload_btn);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
web.loadUrl( "javascript:window.location.reload( true )" );
}
});
これは、webViewでWebサイトをリロードできるコードです
web.loadUrl( "javascript:window.location.reload( true )" );
これを試して :
mWebView.loadUrl(mWebView.getUrl().toString());
現在のWebビューのURLを更新することは一般的な使用法ではありません。
[。
_public class MyWebviewActivity extends Activity {
WebView mWebView;
....
....
....
@Override
public void onRestart() {
String url = mWebView.getUrl();
String postData = MyUtility.getOptionsDataForPOSTURL(mContext);
mWebView.postUrl(url, EncodingUtils.getBytes(postData, "BASE64"));
}
}
_
WebViewのreload()
関数を使用することもできます。ただし、postUrl()
を使用してWebビューをロードした場合、mWebView.reload();
は機能しません。これも機能します
_String webUrl = webView.getUrl();
mWebView.loadUrl(webUrl);
_