zoukankan      html  css  js  c++  java
  • iOS.UIKit.12.UICollectionView

    一、案例介绍:以集合形式展现图片,如图01

    图01

    二、案例步骤:

    1、选择Simple View Aplication,取名cq.38.集合视图,如图02

    图02

    2、Main.storyboard,如图03

    图03

    3、events.plist,如图04,05

    4、CQ38ViewController.h

    #import <UIKit/UIKit.h>
    
    @interface CQ38ViewController : UICollectionViewController
    
    @property (strong,nonatomic) NSArray *events;
    
    @end

    5、CQ38ViewController.m

    #import "CQ38ViewController.h"
    #import "CQ38CollectionViewCell.h"
    
    @interface CQ38ViewController ()
    
    @end
    
    @implementation CQ38ViewController
    
    
    - (void)viewDidLoad
    {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        
        NSBundle *bundle = [NSBundle mainBundle];
        NSString *plistPath = [bundle pathForResource:@"events"
                                               ofType:@"plist"];
        //获取属性列表文件中的全部数据
        NSArray *array = [[NSArray alloc] initWithContentsOfFile:plistPath];
        self.events = array;
        
    }
    
    - (void)didReceiveMemoryWarning
    {
        [super didReceiveMemoryWarning];
        // Dispose of any resources that can be recreated.
    }
    
    - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
    {
        return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
    }
    
    #pragma mark - UICollectionViewDataSource
    
    - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
    {
        return [self.events count] / 2;
    }
    
    - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
    {
        return 2;
    }
    
    - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    {
        CQ38CollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
        NSDictionary *event = [self.events objectAtIndex:(indexPath.section*2 + indexPath.row)];
        cell.label.text = [event objectForKey:@"name"];
        cell.imageView.image = [UIImage imageNamed:[event objectForKey:@"image"]];
        return cell;
    }
    
    #pragma mark - UICollectionViewDelegate
    - (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath
    {
        NSDictionary *event = [self.events objectAtIndex:(indexPath.section*2 + indexPath.row)];
        NSLog(@"select event name : %@", [event objectForKey:@"name"]);
        
    }
    @end
  • 相关阅读:
    iOS应用程序的登录界面
    访问Mac下virtualbox中的win8.1虚拟机
    JASIG-CAS学习笔记——初探CAS
    跨域读取Cookies(续)
    跨域读取Cookies
    错误——无法找到com/* /* /**.xml
    设计模式学习之——简单工厂、工厂方法、抽象工厂方法
    spring+ibatis+dwr+ext项目整合
    SenchaTouch学习——form表单
    FLEX自定义事件
  • 原文地址:https://www.cnblogs.com/cqchen/p/3765030.html
Copyright © 2011-2022 走看看