UI基础篇-iOS中简单图片浏览器的实现

  1 //
  2
  3 //  HYViewController.m
  4
  5 //  01-图片浏览器复习
  6
  7 //
  8
  9 //  Created by apple on 15-4-10.
 10
 11 //  Copyright (c) 2015年 apple. All rights reserved.
 12
 13 //
 14
 15
 16
 17 #import "HYViewController.h"
 18
 19
 20
 21 @interface HYViewController ()
 22
 23 - (IBAction)last;
 24
 25 - (IBAction)next;
 26
 27 /**显示图片的序号*/
 28
 29 @property (weak, nonatomic) IBOutlet UILabel *numlable;
 30
 31 /**显示图片*/
 32
 33 @property (weak, nonatomic) IBOutlet UIImageView *myimage;
 34
 35 /** 显示图片的描述*/
 36
 37 @property (weak, nonatomic) IBOutlet UILabel *desclable;
 38
 39 /** 显示按钮的状态*/
 40
 41 @property (weak, nonatomic) IBOutlet UIButton *lastbtn;
 42
 43 @property (weak, nonatomic) IBOutlet UIButton *nextbtn;
 44
 45
 46
 47 /** 图片数据的集合*/
 48
 49 @property (nonatomic,strong) NSArray *arrayimage;
 50
 51 /** 记录图片显示的索引*/
 52
 53 @property(nonatomic,assign) int index;
 54
 55 @end
 56
 57
 58
 59 @implementation HYViewController
 60
 61 /** 数据的懒加载*/
 62
 63 -(NSArray *)arrayimage
 64
 65 {
 66
 67     if(_arrayimage==nil)
 68
 69     {
 70
 71         //第一次加载
 72
 73         //初始化数据
 74
 75         //1.利用mainBoundle就可以访问手机资源包的任何资源
 76
 77         NSBundle *bdle=[NSBundle mainBundle];
 78
 79         //2.获取全路径
 80
 81        NSString *path=   [bdle pathForResource:@"changeData" ofType:@"plist"];
 82
 83         //3. 读取全路径下的资源
 84
 85         _arrayimage=[NSArray arrayWithContentsOfFile:path];
 86
 87     }
 88
 89
 90
 91     return _arrayimage;
 92
 93 }
 94
 95
 96
 97 //当控制器的view初始化完毕的时候调用该方法
 98
 99 - (void)viewDidLoad
100
101 {
102
103     [super viewDidLoad];
104
105     [self changeData];
106
107
108 }
109
110
111
112 /** 数据的改变*/
113
114 -(void)changeData
115
116 {
117
118     //1.改变序号
119
120     self.numlable.text=[NSString stringWithFormat:@"%d/%d",self.index+1,self.arrayimage.count];
121
122     //2.取出字典数组里的值  数组名[索引下标]
123
124     NSDictionary *dectimage=  self.arrayimage[self.index];
125
126     //3.改变图片
127
128     self.myimage.image=[UIImage imageNamed:dectimage[@"icon"]];
129
130     //4.改变描述
131
132     self.desclable.text=dectimage[@"desc"];
133
134     //5.改变按钮的状态
135
136     self.lastbtn.enabled=(self.index!=0);
137
138     self.nextbtn.enabled=(self.index!=self.arrayimage.count-1);
139
140 }
141
142
143
144 /** 显示上一张图片*/
145
146 - (IBAction)last
147
148 {
149
150     self.index--;
151
152     [self changeData];
153
154
155
156 }
157
158 /** 显示下一张图片*/
159
160 - (IBAction)next
161
162 {
163
164     self.index++;
165
166     [self changeData];
167
168 }
169
170 @end
171
172
173
174 //个人总结:延迟加载的设计、NSBoundle的使用,plist文件的使用
时间: 2024-10-18 17:00:12

UI基础篇-iOS中简单图片浏览器的实现的相关文章

UI基础篇—iOS图片拉伸技巧

比如下面张图片,本来是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: 1 - (void)viewDidLoad 2 { 3 [super viewDidLoad]; 4 // 得到view的尺寸 5 CGSize viewSize = self.view.bounds.size; 6 7 // 初始化按钮 8 UIButton *button = [[UIButton alloc] init]; 9 // 设置尺寸 10

IOS开发UI基础—在UIImageView中添加按钮以及Tag的参数说明

ios开发UI基础-在ImageView中添加按钮以及Tag的参数说明 一.tag参数 一个视图通常都只有一个父视图,多个子视图,在开发中可以通过使用子视图的tag来取出对应的子视图.方法为Viewwithtag: 提示点:在xib中如果想要通过tag参数获取对应的控件(属性),不要把tag的参数设置为0,因为xib中所有的对象默认tag都为0,设置为0取不到对象. 二.ImageView中添加按钮(1)ImageView和Button的比较 Button按钮的内部可以放置多张图片(4),而Im

IOS开发数据存储篇—IOS中的几种数据存储方式

IOS开发数据存储篇—IOS中的几种数据存储方式 发表于2016/4/5 21:02:09  421人阅读 分类: 数据存储 在项目开发当中,我们经常会对一些数据进行本地缓存处理.离线缓存的数据一般都保存在APP所在的沙盒之中.一般有以下几种: 1.PList(XML属性列表) 在使用plist进行数据存储和读取,只适用于系统自带的一些常用类型才能用,且必须先获取路径相对麻烦 //写入文件 NSString *doc = [NSSearchPathForDirectoriesInDomains(

简单图片浏览器

在设置开关灯的时候出了一点小问题,默认UISwitch为on当用if(sender.on)做判断时,第一次点击无效.后来调试默认为on,当改变状态时sender.on返回的是0,再次点击返回的是1.判断一个UISwitch为off可以用!sender.on 用到加载本地目录下的文件 //获取所有描述(通过解析plist文件来创建数组对象,比如传入文件的全路径) NSBundle *bundle = [NSBundle mainBundle]; //获取文件的全路径 NSString *path

C# 系统应用之ListView实现简单图片浏览器

最近有同学问我如何使用ListView加载图片列表,前面在"C#系统应用"中TreeView+ListView+ContextMenuStrip控件实现树状图显示磁盘目录,并在ListView中显示文件的详细信息.这里准备简单介绍下给同学讲述的如何使用ListView+ImageList控件实现简单的图片浏览器知识.        第一步 设计界面框架如下图所示,同时添加ImageList控件(不可见) 注意:设置ListView控件的Anchor属性为Top,Bottom,Right

OpenCV基础篇之读取显示图片

程序及分析 /* * FileName : read.cpp * Author : xiahouzuoxin @163.com * Version : v1.0 * Date : Tue 13 May 2014 07:34:25 PM CST * Brief : * * Copyright (C) MICL,USTB */ #include <cv.h> #include <highgui.h> using namespace cv; using namespace std; in

iOS开发——高级篇——iOS中常见的设计模式(MVC/单例/委托/观察者)

关于设计模式这个问题,在网上也找过一些资料,下面是我自己总结的,分享给大家 如果你刚接触设计模式,我们有好消息告诉你!首先,多亏了Cocoa的构建方式,你已经使用了许多的设计模式以及被鼓励的最佳实践. 首先得搞清楚设计模式是个什么鬼,在软件设计领域,设计模式是对通用问题的可复用的解决方案.设计模式是一系列帮你写出更可理解和复用代码的模板,设计模式帮你创建松耦合的代码以便你不需要费多大力就可以改变或者替换代码中的组件 其实iOS中的设计模式有非常多,常用的就下面这四种 一.MVC设计模式(设计模式

android脚步---简单图片浏览器改变图像透明度

图片浏览器调用ImageView的setAlpha方法来实现改变图片透明度. main.xml文件如下:三个按钮,两个imageview,,界面定义了两个ImageView,一个是显示局部图片的ImageView,android:scaleType="fitCenter表明图片会保持横纵比缩放,并将缩放后图片放在该imageview中央. <?xml version="1.0" encoding="utf-8"?> <LinearLayo

Android 简单图片浏览器 读取sdcard图片+形成缩略图+Gallery

1.读取SD卡上面的图片信息 //想要的返回值所在的列 String[] projection = { MediaStore.Images.Thumbnails._ID}; //图片信息存储在 android.provider.MediaStore.Images.Thumbnails数据库 //快速查询数据库中的图片对应存放路劲 Cursor cursor = managedQuery( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, pro