vì tôi không thể sử dụng bất kỳ khung công tác nào để tạo album ảnh, tôi đang cố gắng tạo khung hình của riêng mình bằng Chế độ xem bộ sưu tập, nhưng tôi đã bị kẹt ngay từ đầu.Xử lý Nhấn Cử chỉ trong UICollectionView
Mục tiêu của tôi là hiển thị tất cả hình ảnh từ dịch vụ web vào chế độ xem bộ sưu tập, vì tất cả được hiển thị, bước tiếp theo là khi ai đó chạm vào bất kỳ ô nào, tôi có thể mở nó ở chế độ xem mới và cũng điều hướng giữa tất cả.
đây là mã cơ bản mà tôi đã tạo:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
[collectionController reloadData];
tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:nil action:@selector(touched)];
tapGesture.numberOfTapsRequired = 1;
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{
return 1;
}
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
return 6;
}
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
static NSString *cellIdentifier = @"Cell";
CollectionCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellIdentifier forIndexPath:indexPath];
[cell.imgCollection setImageWithURL:[NSURL URLWithString:@"http://sallescds.com.br/wp-content/uploads/2012/12/xepop-300x300.jpg"] placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
[cell.imgCollection addGestureRecognizer:tapGesture];
return cell;
}
-(void)touched:(UIGestureRecognizer *)tap{
NSLog(@"the touch happened");
}
nhờ chàng trai.
Got nó, tôi đã cố định những vấn đề này, sai lầm của tôi khi tôi đã dịch tên các phương pháp của tôi để tiếng anh. Cảm ơn sự giúp đỡ, bây giờ tôi phải tìm ra, làm thế nào để làm điều này trong UICollectionViewDelegate, bởi vì tôi không có ý tưởng. Bạn có thể cho tôi một ví dụ hoặc một cái gì đó như thế? –
Ok, vì vậy tôi phải gọi phương thức này - (BOOL) collectionView: (UICollectionView *) collectionView shouldSelectItemAtIndexPath: (NSIndexPath *) indexPath; và tạo ra cử chỉ bên trong nó? –
Điều đó thực sự đơn giản hơn nhiều. Nếu bạn thực hiện các phương thức đại biểu, bạn không cần trình nhận dạng cử chỉ. Các đại biểu sẽ gọi cho bạn thực hiện các phương pháp của nó khi một liên lạc được phát hiện. Lưu ý rằng bạn không cần phải gọi 'shouldSelect..' hoặc' didSelect..' một cách rõ ràng, đại biểu thực hiện điều này cho bạn. –