Кнопка возврата телефона работает в веб-просмотре, но когда я хочу выйти из Webview в приложение, это ничего не делало. Я положил кнопку, которая вернулась к приложению, но я так не остался.с помощью кнопки возврата телефона для выхода из webview
JAVA:
package com.wiralss.adb;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;
public class about extends Activity implements OnClickListener{
WebView webView;
final Activity activity = this;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.instagrem);
webView = (WebView) findViewById(R.id.webView1);
Button B123=(Button)findViewById(R.id.button1235);
B123.setOnClickListener(this);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("https://www.google.com");
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;
}
});
}
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.button1235:
Intent B = new Intent(this, MainActivity.class);
startActivity(B);
break;
// TODO Auto-generated method stub
}
// TODO Auto-generated method stub
}
public void onBackPressed(){
if (webView.isFocused() && webView.canGoBack()) {
webView.goBack();
}
else {
super.onBackPressed();
finish();
}
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
webView.goBack();
return true;
}
return false;
}
}
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_width="match_parent"
android:layout_height="match_parent" >
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:orientation="vertical" >
<Button
android:id="@+id/button1235"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="580px"
android:layout_weight="0.05"
android:text="Button" />
</LinearLayout>
</RelativeLayout>
Другой вопрос. Чтобы удалить кнопку Мне нужно удалить ?:
Button B123=(Button)findViewById(R.id.button1);
B123.setOnClickListener(this);
И?
@Override
public void onClick(View v) {
switch(v.getId()){
case R.id.button1:
Intent B = new Intent(this, MainActivity.class);
startActivity(B);
break;
// TODO Auto-generated method stub
}
// TODO Auto-generated method stub
}
Танк вам очень понравился.
Почему вызов 'webView.isFocused()'? – gunar
Это ошибка. – omer341
Что произойдет, если вы его удалите? – gunar