- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
当我滑动刷新时,SwipeRefreshLayout 的动画显示,但在 onRefresh() 运行时它被卡住,并且只有在 onRefresh() 完成时才开始旋转。
主要 Activity
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myFAB = (FloatingActionButton) findViewById(R.id.myFAB);
recyclerView = (RecyclerView) findViewById(R.id.rv);
recyclerView.setHasFixedSize(true);
LinearLayoutManager llm = new LinearLayoutManager(this);
recyclerView.setLayoutManager(llm);
recyclerView.addItemDecoration(new SimpleDividerItemDecoration(this));
callCadastroEncoemnda();
callPackageList();
swipeRefreshLayout = (SwipeRefreshLayout) findViewById(R.id.swipeRefreshLayout);
swipeRefreshLayout.setOnRefreshListener(this);
swipeRefreshLayout.setColorSchemeResources(
android.R.color.holo_blue_bright,
android.R.color.holo_green_light,
android.R.color.holo_orange_light,
android.R.color.holo_red_light);
}
刷新时:
@Override
public void onRefresh() {
swipeRefreshLayout.setRefreshing(true);
Update.updateAll(MainActivity.this);
//Check if the data change
if (!packages.equals(dao.getPackages())) {
adapter.updateList(dao.getPackages());
}
swipeRefreshLayout.setRefreshing(false);
}
最佳答案
已解决!
我已将刷新代码放在 Runnable 上:(我也改变了我的刷新)
@Override
public void onRefresh() {
new Thread(new Runnable() {
@Override
public void run() {
try {
if (Update.updateAll(MainActivity.this)) {
packages = dao.getPackages(config.getFilter());
packagesAux = dao.getPackages(config.getFilter());
runOnUiThread(new Runnable() {
@Override
public void run() {
adapter.animateTo(packages);
}
});
}
} catch (ExecutionException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
runOnUiThread(new Runnable() {
@Override
public void run() {
swipeRefreshLayout.setRefreshing(false);
}
});
}
}).start();
}
关于java - SwipeRefreshLayout 动画卡住 onRefresh(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32929982/
我有 Scaffold,它包含一个具有渲染不同组件的条件的主体。我添加了 onRefreshIndicator()。但是当 Text 被渲染时它不起作用,而当列表 NamesList 被渲染时它工作得
我目前有一个 SwipeRefreshLayout,它在我下拉时不会调用它的 OnRefresh 方法。我的代码有问题吗? public class MainActivity extends AppC
我已经在我的一个 ListView 上实现了滑动刷新布局,但是当我滑动时 View 没有向下滑动并且图标不可见。尽管它看起来不起作用,但它确实触发了 OnRefresh 监听器。 此外,我认为值得一提
当我滑动刷新时,SwipeRefreshLayout 的动画显示,但在 onRefresh() 运行时它被卡住,并且只有在 onRefresh() 完成时才开始旋转。 主要 Activity prot
我想要一个在用户点击重新加载时触发的事件处理程序。 onrefresh 或 onreload 是要添加到的正确处理程序吗?另外,这甚至会在卸载之前或之后触发吗?是否存在浏览器不一致?谢谢。 最佳答案
当前行为: 我正在尝试通过拉起 View 来更新从服务器获取的列表。当我做 onRefresh 不会触发。 我已经在 setState 函数的回调中设置了 GET 请求,但这似乎没有任何作用。 预期行
我正在学习 android 滑动刷新布局。我在 swipeRefreshLayout“setRefreshing(true)”上发布了 runabble,然后在 onRefresh 方法上我写了 fe
拉动刷新会导致无休止的旋转,并且在 iPhone 上测试应用程序时不会调用 onRefresh。在带有主页按钮的 Android 和 iOS 设备上,一切都按预期运行。 ReactNative版本:0
我想检测用户何时下拉进行刷新 (ActionBar 下方的刷新行开始扩展到其 UI 宽度)。 我想用消息(“向下滑动以刷新”)替换 ActionBar,但是, 我不知道应该使用哪个事件来调用我的函数。
我有一个包含在 RefreshIndicator 中的列表.当下拉列表时,我想从 Firestore(数据库)中获取一些数据,更新我的状态,然后呈现列表。 我连接了一个 redux Action ,可
事实证明,这个社区对我的个人和学校项目非常有帮助,所以我决定加入。这是我的第一个问题。目前,我正在暑假空闲时间构建一个 Android 应用程序。我正在尝试在我的应用程序 fragment 之一中实现
在 Flutter 中,我将 RefreshIndicator 与我的 ListView 一起使用,效果很好。我想在从顶部下拉时刷新数据,如果从底部向上拉则加载更多分页数据。有没有办法在 onRefr
作为集成测试的一部分,我正在尝试为 pull to refresh 编写简单的测试。我正在使用最新的 androidX 测试组件和 Robolectric。我正在测试一个我正在注入(inject)模拟
我在 fragment 类中使用 swiperefreshlayout 我想调用我的主要 Activity 方法来替换 fragment 但是当我试图在主要 Activity 中声明一个静态方法时 m
我是一名优秀的程序员,十分优秀!