我正在尝试在Android中实现pull-to-refresh.我知道除了SwipeRefreshLayoutLollipop的所有新设计的Google应用程序(如Drive(见附件))之外,我注意到拉出时视图中会出现一个新的刷新图标.我尝试在线查看,但徒劳无功.Android是否已将此作为Material Design的一部分发布?关于如何实现它的任何想法?
编辑:有些人已经指出这是如何实现拉动刷新的重复.这不是同一个问题.如果你正确地阅读了这个问题,你会看到它.

iOS 15 已经发布,新版 Safari 也随之发布,带来了无处不在的下拉刷新功能。不管你喜欢与否,单页应用程序不太喜欢这样。
以下是在 iPhone 版 Chrome 上禁用它的方法:
知道如何在 iOS 15 的 Safari 中执行相同操作吗?
CSSoverscroll-behavior-y: contain没有任何效果。
我们可以在自定义视图控制器上实现pull to refresh功能吗?我的视图控制器不是表视图控制器,我想在拉下屏幕时刷新此视图.我该如何实现此功能?
iphone cocoa-touch objective-c uiviewcontroller pull-to-refresh
我正在尝试在ListFragment上实现"pull to refresh",但是现在没有一个库中的下降似乎支持它.没有办法检测到我可以看到的列表片段的过度滚动,所以我想知道是否有人找到了让这个工作的方法?
-
使用Christian的提示我使用以下内容作为onCreateView()方法.
@Override
public View onCreateView (LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
PullToRefreshListView listView = new PullToRefreshListView(getActivity());
mAdapter = new HomeTweetListAdapter(getActivity(), R.layout.tweet_list_item, tweets);
listView.setAdapter(mAdapter);
return listView;
}
Run Code Online (Sandbox Code Playgroud)
就像克里斯蒂安说的那样,你只能用片段做到这一点.返回ListFragment上除ListView以外的任何错误.
编辑:澄清我正在使用Johan的PullToRefresh库
我试图在我的表格视图中让iOS 7上的拉动刷新功能正常工作.在viewDidLoad上,我有:
self.refreshControl = [[UIRefreshControl alloc] init];
[self.refreshControl addTarget:self action:@selector(refreshInvoked:forState:) forControlEvents:UIControlEventValueChanged];
Run Code Online (Sandbox Code Playgroud)
然后我跑:
-(void) refreshInvoked:(id)sender forState:(UIControlState)state {
// Refresh table here...
[_allEntries removeAllObjects];
[self.tableView reloadData];
[self refresh];
}
Run Code Online (Sandbox Code Playgroud)
当刷新方法调用的请求完成后,在didCompleteRequest代码中,我有:
[self.refreshControl endRefreshing];
Run Code Online (Sandbox Code Playgroud)
在iOS 6上,这意味着当你向下拉动表格视图时,它会显示在你拉动时伸展的圆形箭头,并且在拉得足够远之后,它会刷新.但是现在,我看不到圆形箭头,只是一个UIActivityIndicator.它有时也会工作,有时也不会.我错过了什么?
我将在我的webview上添加pull刷新,以便刷新我的webview.我在这个页面上看到了所有问题,但我找不到添加拉动刷新的好方法......
Mainactivity.java
package com.vvhvb.hesselfeenstra.vvheerenveenseboys;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
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);
String url ="http://heerenveenseboys.nl/";
WebView view=(WebView) this.findViewById(R.id.webView);
view.getSettings().setJavaScriptEnabled(true);
view.getSettings().setBuiltInZoomControls(true);
view.getSettings().setDisplayZoomControls(false);
view.setWebViewClient(new WebViewClient());
view.loadUrl(url);
}
}
Run Code Online (Sandbox Code Playgroud)
content_main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.vvhvb.hesselfeenstra.vvheerenveenseboys.MainActivity"
tools:showIn="@layout/activity_main">
<WebView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/webView"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我希望有人能帮助我并为我解决这个问题.
我想在我的WP8.1(运行时)应用程序中实现下拉到刷新功能.我试图找到这个WP版本的解决方案,但正如我所看到的,这个功能适用于旧版本的WP.
我有一个ListView,我想使用它.使用ScrollViewer,我可以检测到用户何时到达列表的末尾,但是例如VerticalOffset值不能是负数,因此我无法检测到下拉手势.
任何人都可以知道如何为我的应用程序实现此功能?
c# listview windows-runtime pull-to-refresh windows-phone-8.1
根据Apple的说法,刷新控件应该是iOS 11中大标题导航栏的一部分.
当我在故事板中为UITableViewController启用刷新控件时,刷新控件是导航栏的一部分(在拉动刷新时).
我不能在故事板中为所有其他视图(如UICollectionViewController)执行此操作.当我在代码中添加刷新控件作为子视图时,它不是导航栏的一部分:
refreshControl = UIRefreshControl()
collectionView?.addSubview(refreshControl)
Run Code Online (Sandbox Code Playgroud)
它看起来像这样:
如何在我的自定义滚动视图(如UICollectionViewController)中添加刷新控件,以便在使用大标题时导航栏中显示刷新控件?
我想建议重现我们可以在bar动作下的最后一个gmail更新中找到的最后一次刷新.谢谢你的支持.
我想,我必须在ListView上使用onScroll处理程序
public void onScroll(AbsListView absListView, int firstVisible, int visibleCount, int totalCount)
Run Code Online (Sandbox Code Playgroud)
并计算一个比率来检测顶部过度滚动?
但是如何重现相同的刷新动画(虚线,在x轴上重复)?
这里有一些截图.



我开始了解 Jetpack Compose。我将这个应用程序放在一起,探索不同的日常用例,该项目中的每个功能模块都应该解决不同的场景。
\n其中一个功能模块 \xe2\x80\x93 功能chatexample模块尝试实现一个简单的功能,ViewPager其中每个页面都是一个Fragment,第一页“消息”应该显示一个RecyclerView围绕 . 包裹的分页SwipeRefreshLayout。现在,我们的目标是使用 Jetpack Compose 来实现这一切。这是我现在遇到的问题:
我用来实现 Pull-To-Refresh 操作的PullRefreshIndicator按预期工作,到目前为止一切看起来都非常简单,但我无法弄清楚为什么 ProgresBar 保持在顶部。
\n到目前为止我已经尝试过了;一直继承Modifier父母的教诲。Scaffold确保我明确设置尺寸以适合最大高度和宽度。在whenBox语句中添加一个空-但到目前为止没有任何效果,我猜我可以删除如果我看到ViewModel不应该刷新,但我不认为那样这是正确的做法。PullRefreshIndicator
为了快速解释我在这里使用的可组合项,我有:
\n<Surface>\n <Scaffold> // Set with a topBar\n <Column>\n <ScrollableTabRow>\n <Tab/> // Set for the first "Messages" tab\n <Tab/> // Set for the second "Dashboard" tab\n </ScrollableTabRow>\n <HorizontalPager>\n // ChatExampleScreen\n <Box> // A Box set …Run Code Online (Sandbox Code Playgroud) android pager android-scrollable-tabs pull-to-refresh android-jetpack-compose
pull-to-refresh ×10
android ×5
ios ×3
java ×2
c# ×1
cocoa-touch ×1
gmail ×1
ios11 ×1
ios15 ×1
ios7 ×1
iphone ×1
listview ×1
objective-c ×1
pager ×1
progress-bar ×1
safari ×1
webview ×1