MJRefresh
MJRefresh copied to clipboard
An easy way to use pull-to-refresh.
主要解决这个问题:对`footer`进行`resetNoMoreData`之后,如果直接调用`footer.beginRefreshing`时,由于`resetNoMoreData`中对`state`的更改是在下次主线程中执行,这样就导致`footer`不显示`loading`动画。  效果参照下图: * 修改之前的效果  * 修改之后的效果 
**描述bug** UICollectionViewCell重写preferredLayoutAttributesFitting实现高度自适应,此时打开collectionView.mj_footer,上拉加载数据后,再反向滑动(向下滑)列表,会出现抖动,collectionView.mj_footer不打开则不会。 MJRefreshAutoFooter、MJRefreshAutoStateFooter、MJRefreshAutoNormalFooter、MJRefreshBackFooter、MJRefreshBackStateFooter、MJRefreshBackNormalFooter试过都不行 **必现/偶发?** 必现 **怎么样重现这个bug** 1. 首页点击进去上来加载之后再反向滑动 **运行环境** - iPhone15pro - iOS17.1.1 - Xcode15.2 (15C500b) **额外的** Demo见附件 [mjFooterDemo.zip](https://github.com/CoderMJLee/MJRefresh/files/14430555/mjFooterDemo.zip)
上拉刷新,刷新控制无法恢复。 有较小的几率复现。 大家有没有遇到过。 出现问题之后无法恢复,退出页面重新进,就正常了。 
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { // 遇到这些情况就直接返回 if (!self.userInteractionEnabled) return; // 这个就算看不见也需要处理 if ([keyPath isEqualToString:MJRefreshKeyPathContentSize]) **{** [self scrollViewContentSizeDidChange:change]; } // 看不见 if (self.hidden) return; if ([keyPath...
Hi MJRefresh Maintainers, I'm reaching out because I appreciate your work on MJRefresh. As open-source security is a growing concern, I'd like to suggest some improvements based on the [OpenSSF...
**你的新功能建议是否牵扯到某个常见的问题?** 希望新增左滑无感加载更多功能 **你希望达到的效果** 如题
**描述bug** 查看视频,下拉刷新动画直接消失了 struct LibrarySongView: View { @StateObject private var viewModel = LibrarySongViewModel() @State private var scrollView: UIScrollView? // ✅ 保存 ScrollView 引用 @State private var currentPage: Int = 1 //...
`+ (NSString *)mj_localizedStringForKey:(NSString *)key value:(NSString *)value` 方法中`NSString *i18nFolderPath = [bundle pathForResource:language ofType:@"lproj"];`获取到的i18nFolderPath为nil,导致`mj_defaultI18nBundle = [NSBundle bundleWithPath:i18nFolderPath];`执行有异常提示: **NSBundle (null) initWithPath failed because the resolved path is empty or nil**