Code Monkey home page Code Monkey logo

Comments (8)

CoderMJLee avatar CoderMJLee commented on May 19, 2024

从方法名可以看出:这是cell和数据处理问题,跟刷新框架没有关系的哈

from mjrefresh.

boboGoodMan avatar boboGoodMan commented on May 19, 2024

我看了一下,貌似是跟tabview冲突,您可以试一下在您的demo里单纯删除数据试一下

发送自魅族手机

-------- 原始邮件 --------
发件人:M了个J [email protected]
时间:周六 2月28日 11:57
收件人:CoderMJLee/MJRefresh [email protected]
抄送:boboGoodMan [email protected]
主题:Re: [MJRefresh] 下拉刷新删除全部数据的话崩溃 (#40)

从方法名可以看出:这是cell和数据处理问题,跟刷新框架没有关系的哈


Reply to this email directly or view it on GitHub:
#40 (comment)

from mjrefresh.

CoderMJLee avatar CoderMJLee commented on May 19, 2024

你删除完数据后,要进行reloadData或者reloadRows,这是tableView的正确用法哈。跟刷新框架没关系的

from mjrefresh.

boboGoodMan avatar boboGoodMan commented on May 19, 2024
[self.fakeData removeAllObjects];

// [self.tableView reloadData];
// [self.tableView headerEndRefreshing];

dispatch_async(dispatch_get_global_queue(0, 0), ^{
    for (int i = 0; i<5; i++) {
        [self.fakeData insertObject:MJRandomData atIndex:0];
    }
    dispatch_async(dispatch_get_main_queue(), ^{
        [self.tableView reloadData];
        [self.tableView headerEndRefreshing];

    });
});

我这样写的话是会出问题的

from mjrefresh.

CoderMJLee avatar CoderMJLee commented on May 19, 2024

嗯,那也是数据处理的问题。你就算不用刷新框架,也还是有问题的。你的异步操作时间太短,导致插入数据和刷新表格的先后顺序不稳定。我先忙点东西哈,有问题等会一起讨论,你先留言哈。

from mjrefresh.

boboGoodMan avatar boboGoodMan commented on May 19, 2024

dispatch_async(dispatch_get_global_queue(0, 0), ^{
[self.fakeData removeAllObjects];
for (int i = 0; i<5; i++) {
[self.fakeData insertObject:MJRandomData atIndex:0];
}
dispatch_async(dispatch_get_main_queue(), ^{
[self.tableView reloadData];
[self.tableView headerEndRefreshing];

    });
});

这样写的话就没有问题,如果我在工程里去重新获取数据,并且网速非常好的话,这样异步操作时间肯定也短,难道需要延时操作?

from mjrefresh.

CoderMJLee avatar CoderMJLee commented on May 19, 2024

你的思路很正确,不用延迟的。其实一般的步骤就是去子线程拿数据,拿完数据就去主线程刷新。拿数据的话一般用的是异步请求框架,不用自己写gcd的dispatch_asyc代码

from mjrefresh.

boboGoodMan avatar boboGoodMan commented on May 19, 2024

3q,我貌似已经理通了,是我写的本身跟tabview的重用机制冲突了。

from mjrefresh.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.