使用数组填充的集合/表视图的详细信息视图?

时间:2014-11-09 20:01:10

标签: ios iphone nsarray uicollectionview uicollectionviewcell

我在两个不同的实例中遇到类似的问题,但我觉得一个问题的解决方案将解决另一个问题。我是个菜鸟。我使用Collection View查看我使用NSArray填充的照片库。集合视图工作得很好,并以正确的顺序填充正确的图像。我只是无法弄清楚如何让详细视图与我具体的代码一起正常工作。我在.h文件中设置了我的代理:

@interface PhotoViewController : UICollectionViewController <UICollectionViewDelegate, UICollectionViewDataSource>

NSArray看起来像这样:

#import "PhotoViewController.h"
#import "PhotoViewCell.h"
#import "ImageDetailController.h"

@interface PhotoViewController ()

@end

@implementation PhotoViewController {

    NSArray *array;

}

- (void)viewDidLoad {

        array = [[NSArray alloc]initWithObjects:@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png",@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png",@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png",@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png",@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png",@"walkerthumb.png",@"farmerthumb.png",@"unrulythumb.png",@"fetchthumb.png", nil];

    [super viewDidLoad];
    // Do any additional setup after loading the view.





}

-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {



    PhotoViewCell *cell = (PhotoViewCell*)[collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];

    [[cell myImageView]setImage:[UIImage imageNamed:[array objectAtIndex:indexPath.item]]];

    return cell;





}

-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {

    return [array count];


}

在我单元格的头文件中,我有像这样调用的图像属性:

@property (weak, nonatomic) IBOutlet UIImageView *myImageView;

我试图根据点击的图片推送不同的细节视图。我知道它必须再次涉及某种阵列,但我不知道如何实现它。我不知道如何告诉Collection View该做什么。我在网上尝试过的教程都没有奏效。

1 个答案:

答案 0 :(得分:0)

您必须实现以下方法才能获得点击    集合视图中的项目。                - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath                 {                     // indexPath将返回单击的行索引和部分。                 }