Ich habe meine erste Android-App erstellt, die im Grunde ein Webview ist, um einige Seiten online aufzurufen, aber wenn ich die Schaltfläche "Zurück" drücke, wird die App einfach geschlossen, wie kann ich die Schaltfläche "Zurück" konfigurieren, um eine Seite zurückzugehen?
Hier ist mein aktueller Code:
package com.mysite.myapp;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
public class mysite extends Activity
{
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(event.getAction() == KeyEvent.ACTION_DOWN){
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
if(mWebView.canGoBack() == true){
mWebView.goBack();
}else{
finish();
}
return true;
}
}
return super.onKeyDown(keyCode, event);
}
WebView webView;
final Activity activity = this;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.main);
final WebView webView = (WebView) findViewById(R.id.webview);
webView.getSettings().setJavaScriptEnabled(true);
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress)
{
activity.setTitle("Loading...");
activity.setProgress(progress * 100);
if(progress == 100)
activity.setTitle(R.string.app_name);
}
});
webView.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl)
{
// Handle the error
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
});
webView.loadUrl("http://www.mysite.com/page1.php");
Button webButton = (Button) findViewById(R.id.button1);
webButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
webView.loadUrl("http://www.mysite.com/page2.php");
}});
Button webButton1 = (Button) findViewById(R.id.button2);
webButton1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
webView.loadUrl("http://www.mysite.com/page3.php");
}});
Button webButton2 = (Button) findViewById(R.id.button3);
webButton2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
webView.loadUrl("http://www.mysite.com/page4.php");
}});
Button webButton3 = (Button) findViewById(R.id.button4);
webButton3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
webView.loadUrl("http://www.mysite.com/page4.php");
}});
Button webButton4 = (Button) findViewById(R.id.button5);
webButton4.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(view.getContext(), morescreen.class);
startActivityForResult(myIntent, 0);
}
});
Button webButton5 = (Button) findViewById(R.id.button6);
webButton5.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
webView.loadUrl("http://www.mysite.com/page5.php");
}});
}
}
Ich würde Ihre Hilfe wirklich schätzen, ich lerne noch :)
Vielen Dank im Voraus
Jota