আমি একটিতে একটি যুক্ত UIRefreshControl
করার চেষ্টা করছি UICollectionView
, তবে সমস্যাটি হল যে সংগ্রহ ভিউটি তার পাত্রে ধারকটির উচ্চতা পূরণ না করে রিফ্রেশ নিয়ন্ত্রণ উপস্থিত হয় না। অন্য কথায়, সংগ্রহের ভিউ স্ক্রোলিংয়ের জন্য যথেষ্ট দীর্ঘ না হওয়া পর্যন্ত রিফ্রেশ নিয়ন্ত্রণের দৃশ্যটি প্রকাশ করার জন্য এটি নীচে টানতে পারে না। সংগ্রহটি তার পিতামাতার ধারকের উচ্চতা ছাড়িয়ে যাওয়ার সাথে সাথে এটি নীচে টেনে নিয়ে যাওয়া এবং রিফ্রেশ দৃশ্যটি প্রকাশ করে।
আমি UICollectionView
সংগ্রহ ভিউতে একটি আউটলেট দিয়ে মূল দৃশ্যের অভ্যন্তরে একটি দ্রুত আইওএস প্রকল্প স্থাপন করেছি যাতে আমি এতে যুক্ত UIRefreshControl
করতে পারি viewDidLoad
। পুনরায় ব্যবহার শনাক্তকারী সহ একটি প্রোটোটাইপ সেল রয়েছেcCell
এটি নিয়ামকের সমস্ত কোড এবং এটি সমস্যাটি বেশ ভালভাবে প্রদর্শন করে। এই কোডটিতে আমি ঘরের উচ্চতা 100 এ সেট করেছি, যা প্রদর্শনটি পূরণ করার পক্ষে যথেষ্ট নয়, এবং সুতরাং ভিউটি টানা যাবে না এবং রিফ্রেশ নিয়ন্ত্রণটি প্রদর্শিত হবে না। ডিসপ্লেটি পূরণের জন্য এটি আরও কিছুতে সেট করুন, তারপরে এটি কার্যকর হয়। কোন ধারনা?
@interface ViewController () <UICollectionViewDelegateFlowLayout, UICollectionViewDataSource>
@property (strong, nonatomic) IBOutlet UICollectionView *collectionView;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
UIRefreshControl *refreshControl = [[UIRefreshControl alloc] init];
[self.collectionView addSubview:refreshControl];
}
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
return 1;
}
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return 1;
}
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
return [collectionView dequeueReusableCellWithReuseIdentifier:@"cCell" forIndexPath:indexPath];
}
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
return CGSizeMake(self.view.frame.size.width, 100);
}
alwaysBounceVertical