图片浏览器

#import "ViewController.h"


@interface ViewController ()

//图片序号

@property (weak, nonatomic) IBOutlet UILabel *numView;

//上一张按钮

@property (weak, nonatomic) IBOutlet UIButton *preBtn;

//下一张按钮

@property (weak, nonatomic) IBOutlet UIButton *nextBtn;

//图片

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

//详细 描述

@property (weak, nonatomic) IBOutlet UILabel *desView;

//上一张

- (IBAction)pre;

//下一张

- (IBAction)next;

//图片索引

@property (nonatomic,assign) int index;


//创建字典数组存储数据

@property (nonatomic,strong) NSArray *arrData;

@end


@implementation ViewController


- (void)viewDidLoad {

    [super viewDidLoad];

    //读取plist文件

    //1.获取 plist文件的全路径

    NSBundle *bundle=[NSBundle mainBundle];

    //2.获取 bundel下指定文件名称的全路径  pathForResource可以返回bundle下指定文件名和扩展名的文件全路径

    //NSString *filePath=[bundle pathForResource:@"imgData" ofType:@"plist"];

    NSString *filePath=[bundle pathForResource:@"imgData.plist" ofType:nil];

    //3.arrayWithContentsOfFile需要文件的全路径,它读取指定全路径的文件的内容,生成key-value,添加到数组中

    self.arrData=[NSArray arrayWithContentsOfFile:filePath];

    

    self.index=-1;

    [self next];

}



- (IBAction)pre {

    self.index--;

    [self showImage];

}

//显示 图片

- (void) showImage

{

        //先取出对应索引位置的字典

    NSDictionary *dict=self.arrData[self.index];

    

    self.numView.text=[NSString stringWithFormat:@"%d/%ld",(self.index+1),self.arrData.count];

    self.desView.text=dict[@"desc"];

    //UIImageView设置图片  imageNamed可以通过指定的图片名称来创建对应的UIImage对象进行返回

    //1.缺点:它会生成图片缓存(再次使用时的速度更快,因为它不再需要去重新获取数据),它不会立刻释放,而需要等到这个应用程序结束后才释放

    //2.当你需要加载 数量多  图片容量大  的图片的时候,不建议使用这种方式。

    self.iconView.image=[UIImage imageNamed:dict[@"icon"]];

    //}

    self.preBtn.enabled=(self.index!=0); //第一张的时候禁用

    self.nextBtn.enabled=(self.index!=self.arrData.count-1);//第三张的时候禁用

}


- (IBAction)next {

    self.index++;

    [self showImage];

}

@end


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值