【问题标题】:How can i add Swipe to Refresh in my WebVIew app?如何在我的 WebVIew 应用程序中添加滑动以刷新?
【发布时间】:2016-06-16 20:59:48
【问题描述】:

我制作了一个新闻阅读器应用程序(WebView)。我不知道如何在我的应用程序中添加拉动刷新。我是一名刚刚开始编程的学生(学习者/n00b)任何人都可以在这里告诉我要添加什么或我必须在此处发布哪些 java 类或 xml 代码,以便您帮助我。

【问题讨论】:

标签: java android android-studio android-webview android-studio-2.2


【解决方案1】:

您需要用SwipeRefreshLayout 包装您的WebView。为此,请转到您的 xml 文件并执行以下操作:

<android.support.v4.widget.SwipeRefreshLayout
    android:id="@+id/swipeToRefresh"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <WebView.../> <!-- your view goes here -->

</android.support.v4.widget.SwipeRefreshLayout>

现在转到具有 WebView 逻辑(活动或片段)的 java 文件并添加以下代码:

// Swipe to Refresh
    SwipeRefreshLayout swipeLayout = (SwipeRefreshLayout) getView().findViewById(R.id.swipeToRefresh);
    swipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
        @Override
        public void onRefresh() {
            // Insert your code here
            webView.reload(); // refreshes the WebView
        }
    });

这将设置OnRefreshListener,您可以在方法上添加代码。也请查看官方文档,了解SwipeRefreshLayout 还有哪些其他方法。

【讨论】:

  • 您的 WebView 是在 MainActivity 中还是在 Fragment 中?
  • 我有一个 MainActivity 类和 WebViewActivity 类。
  • 所以尝试删除 getView() 部分,如果仍然出现错误,请使用 getContext() 或 getActivity()
【解决方案2】:

SwipeRefreshLayout 包裹您的WebView。在您的 WebView 上调用 reload()SwipeRefreshLayout 中添加一个 OnRefreshListener

【讨论】:

    【解决方案3】:

    我正在尝试使用 SwipeRefreshLayout 但感到困惑。这对我有帮助:在 Android WebViewGold 中,在 Config.java 中,只需将 ENABLE__PULL_REFRESH 设置为 true - 希望这会有所帮助:-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-06-06
      • 2020-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-11
      • 1970-01-01
      相关资源
      最近更新 更多