相关疑难解决方法(0)

如何在Fragment中的WebView中添加"Go Back"功能?

更新:解决了!问题与我的Viewpager而不是WebView有关.

我正在尝试向我WebView的内部添加一个"返回"功能Fragment.但我无法弄清楚如何:

public final class TestFragment extends Fragment {

    static WebView mWeb;
    private View mContentView;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState)
    {   
        mContentView = inflater.inflate(R.layout.webview, null);
        mWeb = (WebView)mContentView.findViewById(R.id.webview);

        WebSettings settings = mWeb.getSettings();
        settings.setJavaScriptEnabled(true);
        settings.setSupportZoom(false);
        mWeb.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        mWeb.getSettings().setBuiltInZoomControls(false);
        mWeb.loadUrl("myurl...");
        mWeb.setOnKeyListener(new OnKeyListener(){
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if ((keyCode == KeyEvent.KEYCODE_BACK) && mWeb.canGoBack()) {
                    mWeb.goBack();
                    return true;
                }
                return false;
            }
        });
    }   
}
Run Code Online (Sandbox Code Playgroud)

我也试过类似的东西:

@Override
public boolean onKeyDown(int keyCode, KeyEvent …
Run Code Online (Sandbox Code Playgroud)

android android-webview android-fragments

32
推荐指数
7
解决办法
3万
查看次数

在WebView中启用后退按钮

我刚刚开始使用Android SDK.我想用WebView创建一个只显示本地网页的简单应用程序.我已经使用了我在网上找到的例子来制作它.

该应用程序工作得很好,直到我想添加一个后退按钮.当按下电话后退按钮时,应用程序崩溃.

这是我的MainActivity.java

package com.hspd.avhor;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends Activity {

    WebView wv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        WebView wv = (WebView)findViewById(R.id.hspd_webview);
        wv.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url){
                view.loadUrl(url);
                return true;
            }
        });
        wv.loadUrl("file:///android_asset/one.htm");
    }

    @Override
    public void onBackPressed()
    {
        if(wv.canGoBack())
            wv.goBack();
        else
            super.onBackPressed();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action …
Run Code Online (Sandbox Code Playgroud)

android webview android-webview

6
推荐指数
1
解决办法
2万
查看次数

Android webview上一页的后退按钮无法正常工作

我试图覆盖后退按钮,以便它返回上一页,但它只是退出应用程序.这里;代码..请告诉我哪里出错了.

package com.example.thebase;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.util.Log;
import android.view.KeyEvent;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

public class MainAccelerometer extends Activity implements AccelerometerListener{

WebView myWebView;
//Back Button Code
     @Override
        public boolean onKeyDown(int keyCode, KeyEvent event) {
            if(event.getAction() == KeyEvent.ACTION_DOWN){
                switch(keyCode)
                {
                case KeyEvent.KEYCODE_BACK:
                    if(myWebView.canGoBack() == true){
                        myWebView.goBack();
                    }else{
                        finish();
                    }
                    return true;
                }

            }
            return super.onKeyDown(keyCode, event);
        }


//--------------------  


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.accelerometer_example_main);
    //ENABLING JAVASCRIPT CODE
            WebView myWebView = (WebView) findViewById(R.id.webview); …
Run Code Online (Sandbox Code Playgroud)

android back-button webview

5
推荐指数
1
解决办法
2万
查看次数

Android启用webview中的后退按钮

我正在使用以下代码在我的Android应用中显示webview.

package com.company.myapp;

import com.google.android.apps.analytics.GoogleAnalyticsTracker;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.webkit.WebChromeClient;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Toast;

public class ArticlesActivity extends Activity {

    /** Initialize the Google Analytics Tracker */
    GoogleAnalyticsTracker tracker;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().requestFeature(Window.FEATURE_PROGRESS);
        getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
        WebView webview = new WebView(this);
        setContentView(webview); 
        setProgressBarVisibility(true); 
        webview.getSettings().setJavaScriptEnabled(true);
        webview.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        final Activity activity = this;
        tracker = GoogleAnalyticsTracker.getInstance();
        // Start the tracker, updating google every 20 …
Run Code Online (Sandbox Code Playgroud)

java android webview

3
推荐指数
1
解决办法
7535
查看次数

处理 webView 中的后退按钮

我有一个 android 项目,我想在使用 webview 时处理片段中的后退按钮。当我使用 webView 并单击多个链接,然后单击返回时。它关闭应用程序。我怎样才能让它转到背面。到目前为止,我已经做了以下工作:

public class NewsFragment extends Fragment {


private ProgressDialog progressDialog;
private WebView myWebView ;

public NewsFragment()
{

    // Required empty public constructor
}






@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View rootView = inflater.inflate(R.layout.fragment_news, container, false);
    myWebView = (WebView) rootView.findViewById(R.id.mwl_Website);
    myWebView.setWebViewClient(new WebViewClient());
    myWebView.getSettings().setBuiltInZoomControls(true);
    myWebView.requestFocusFromTouch();
    myWebView.setVerticalScrollBarEnabled(true);
    myWebView.setHorizontalScrollBarEnabled(true);
    myWebView.setVerticalScrollBarEnabled(true);
    myWebView.setHorizontalScrollBarEnabled(true);
    myWebView.requestFocusFromTouch();
    myWebView.getSettings().setJavaScriptEnabled(true);
    myWebView.getSettings().setUseWideViewPort(true);
    myWebView.getSettings().setLoadWithOverviewMode(true);
    myWebView.addJavascriptInterface(new WebAppInterface(getActivity()), "Android");
    myWebView.getSettings().setJavaScriptEnabled(true);
    myWebView.loadUrl(getResources().getString(R.string.WEBSITE));

    new LoadViewTask().execute();

    rootView.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public …
Run Code Online (Sandbox Code Playgroud)

android webview

3
推荐指数
1
解决办法
2269
查看次数

Android Webview后退按钮转到上一页

我有一个Web视图,可以让我浏览一个站点.当我单击后退按钮,而不是它转到上一页时,它退出应用程序.我已将以下方法添加到MainActivity.java中

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    setContentView(R.layout.activity_main);
    WebView webview = (WebView) this.findViewById(R.id.webView);
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:
                if (webview.canGoBack()) {
                    webview.goBack();
                } else {
                    finish();
                }
                return true;
        }
    }
    return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)

android

2
推荐指数
1
解决办法
1万
查看次数

如何使用后退按钮返回CrossWalk的XWalkView,或禁用它?

我首先尝试使用下面的代码返回webview.但是对于低渲染能力,我用XWalkView取代了WebView.

public boolean onKeyDown(int keyCode, KeyEvent event) {
    WebView mWebView = (WebView) findViewById(R.id.webview);
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:

                if (mWebView.canGoBack()) {
                    mWebView.goBack();
                } else {
                    finish();
                    if (MainActivity.mTencent.isSessionValid()) {
                        MainActivity.logout();
                    }
                }
                return true;
        }

    }
    return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)

当更改为XWalkView时,我只能在XWalkView中找到这个.但我找不到一个使用它的例子.当我没有实现后退按钮时,双击后退按钮后应用程序将退出.

我的问题是:1.如何使用返回XWalkView,如果某些代码可能更有帮助.2.当我不使用返回功能时,如何禁用后退按钮单击事件.

先感谢您.

android keyevent back-button crosswalk xwalkview

2
推荐指数
1
解决办法
2090
查看次数

Android-WebView后退按钮

我在WebView中有一个网站的镜像,当我按下智能手机上的** Back **按钮时,我想返回上一页。当前,如果我按智能手机上的**返回**按钮,则该应用程序将最小化(它停留在后台)。我不知道该怎么做,有人可以帮助我吗?

主要活动

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends AppCompatActivity {

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

        WebView wv = (WebView) findViewById(R.id.webview1);
        wv.loadUrl("https://www.xxxx.com.br");
        wv.setWebViewClient(new WebViewClient());

        WebSettings ws = wv.getSettings();
        ws.setJavaScriptEnabled(true);
        ws.setSupportZoom(false);
Run Code Online (Sandbox Code Playgroud)

表现

<uses-permission android:name="android.permission.INTERNET" />
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@drawable/ic_stat_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />


            </intent-filter>
        </activity>
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

android

2
推荐指数
1
解决办法
2089
查看次数

如果在Webview中打开任何URL,如何返回Backbutton上的Webview页面?

我有一个活动,其中有Webview可用.如果我单击webview中的任何URL,该URL将打开,但是当我单击后退按钮时,它不会出现在上一个Webview页面上,而是继续进行该webview页面之前的活动.

Scenerio: -我正在使用Xyz Activity,在Xyz活动的某些元素上单击它转到Webview活动,该活动显示webview上加载的URL.在webview上,如果我点击任何网址链接,它会打开,但是当我点击后退按钮时,它会返回到Xyz活动而不是Webview活动.我想回到Webview Activity而不是Xyz Activity.

任何人都可以指导我同样的,因为我无法找到我应该使用或实现什么使其按我的需要工作?任何帮助将不胜感激.提前致谢...

编辑:-

代码如下: -

public class StoryDetail extends SherlockActivity
{
    WebView content;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.story_detail);

    BaseStory story = BaseStory.createFromCursor(c); // BaseStory is a class containing Database values...

    // Get the fields
    content = (WebView) findViewById(R.id.content);
    content.getSettings().setPluginState(PluginState.ON_DEMAND);
    content.getSettings().setJavaScriptEnabled(true);
    content.getSettings().setAllowFileAccess(true);
    content.setWebChromeClient(new WebChromeClient());
    content.setWebViewClient(new WebViewClient());

    String html = 
        "<html><head>" + 
            "</head>" +
        "<body>" +

            "<section id=\"content\">" +
                story.getContent() + …
Run Code Online (Sandbox Code Playgroud)

android webview

0
推荐指数
1
解决办法
1745
查看次数