iOS开发 -------- 图片浏览器初步
一 示例代码
//
// RootViewController.m
// 图片浏览器初步
//
// Created by lovestarfish on 15/11/1.
// Copyright © 2015年 S&G. All rights reserved.
// #import "RootViewController.h" #define POTOIMGW 175
#define POTOIMGH 300
#define POTOIMGX 100
#define POTOIMGY 120 @interface RootViewController () @property (nonatomic,retain) UILabel *firstLabel;
@property (nonatomic,retain) UILabel *lastLabel;
@property (nonatomic,retain) UIImageView *icon;
@property (nonatomic,retain) UIButton *leftButton;
@property (nonatomic,retain) UIButton *rightButton; @property (nonatomic,retain) NSArray *dataSource; - (void)change;
@property (nonatomic,assign) int i; @end @implementation RootViewController - (void)dealloc {
self.firstLabel = nil;
self.lastLabel = nil;
self.icon = nil;
self.leftButton = nil;
self.rightButton = nil;
self.dataSource = nil;
[super dealloc];
} - (NSArray *)dataSource {
if (!_dataSource) {
NSDictionary *dic1 = @{@"name":@"xib1",@"desc":@"第一张"};
NSDictionary *dic2 = @{@"name":@"xib2",@"desc":@"第二张"};
NSDictionary *dic3 = @{@"name":@"xib3",@"desc":@"第三张"};
NSDictionary *dic4 = @{@"name":@"xib4",@"desc":@"第四张"};
NSDictionary *dic5 = @{@"name":@"xib5",@"desc":@"第五张"};
self.dataSource = @[dic1,dic2,dic3,dic4,dic5];
}
return _dataSource;
} - (void)viewDidLoad {
[super viewDidLoad];
//初始化 i= 0
self.i = ; //创建一个用来显示序号的label控件
UILabel *headLabel =[[UILabel alloc] initWithFrame:CGRectMake(, , , )];
[headLabel setTextAlignment:NSTextAlignmentCenter];
[headLabel setTextColor:[UIColor blackColor]];
[self.view addSubview:headLabel];
[headLabel release];
self.firstLabel = headLabel; //创建一个装载图片的控件
UIImageView *potoImage = [[UIImageView alloc] initWithFrame:CGRectMake(POTOIMGX, POTOIMGY, POTOIMGW, POTOIMGH)];
potoImage.image = [UIImage imageNamed:@"xib1"];
[self.view addSubview:potoImage];
[potoImage release];
self.icon = potoImage; //创建最下边的描述图片的label控件
UILabel *desLabel = [[UILabel alloc] initWithFrame:CGRectMake(, , , )];
desLabel.textAlignment = NSTextAlignmentCenter;
[self.view addSubview:desLabel];
[desLabel release];
self.lastLabel = desLabel; //创建两个方向键按钮
UIButton *leftBtn = [UIButton buttonWithType:UIButtonTypeSystem];
leftBtn.frame = CGRectMake(, , , );
[leftBtn setTitle:@"向左" forState:UIControlStateNormal];
[leftBtn addTarget:self action:@selector(leftBtnClick:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:leftBtn];
self.leftButton = leftBtn; UIButton *rightBtn = [UIButton buttonWithType:UIButtonTypeSystem];
rightBtn.frame = CGRectMake(POTOIMGX + POTOIMGW + , , , );
[rightBtn setTitle:@"向右" forState:UIControlStateNormal];
[rightBtn addTarget:self action:@selector(rightBtnClick:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:rightBtn];
self.rightButton = rightBtn; [self change];
} /**
* 点击按钮图片和文字做出相应的改变
*/
- (void)change { self.icon.image = [UIImage imageNamed:self.dataSource[self.i][@"name"]];
self.lastLabel.text = self.dataSource[self.i][@"desc"];
self.firstLabel.text = [NSString stringWithFormat:@"%d/5",self.i + ];
/*
self.firstLabel.text = [NSString stringWithFormat:@"%d/5",self.i + 1];
switch (self.i) {
case 0:
self.lastLabel.text = @"一";
self.icon.image = [UIImage imageNamed:@"xib1"];
break;
case 1:
self.lastLabel.text = @"二";
self.icon.image = [UIImage imageNamed:@"xib2"];
break;
case 2:
self.lastLabel.text = @"三";
self.icon.image = [UIImage imageNamed:@"xib3"];
break;
case 3:
self.lastLabel.text = @"四";
self.icon.image = [UIImage imageNamed:@"xib4"];
break;
case 4:
self.lastLabel.text = @"五";
self.icon.image = [UIImage imageNamed:@"xib5"];
break;
default:
break;
}
*/
//控制按钮的点击,如果为5则右键shixiao,如果为1,则左键实现
self.leftButton.enabled = (self.i != );
self.rightButton.enabled = (self.i != );
} /**
* 向右按钮的点击方法
*/
- (void)rightBtnClick:(UIButton *)button {
self.i++;
[self change];
} /**
* 向左按钮的点击方法
*/
- (void)leftBtnClick:(UIButton *)button {
self.i--;
[self change];
} - (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning]; } @end
二 实现效果
iOS开发 -------- 图片浏览器初步的更多相关文章
- iOS开发-图片浏览器(优化)
// // ViewController.m // 19-图片浏览器 // // Created by hongqiangli on 2017/7/31. // Copyright © 201 ...
- iOS开发-图片高斯模糊效果
iOS开发的时候有的时候需要将图片设置模糊,或者通过点击下拉方法,去除模糊,一切都是为了应用更受用户欢迎,iOS7之后半透明模糊效果得到大范围使用的比较大,现在也可以看到很多应用局部用到了图片模糊效果 ...
- iOS开发图片加载的内存问题及优化方案
原创作者:Magic-Unique 原文地址:https://github.com/Magic-Unique/HXImage猿吧 - 资源共享论坛: http://www.coderbar.cn 做最 ...
- IOS开发-图片上传
目前IOS端开发,图片上传到服务器分为两种,一种是直接上到服务器,一种是借助第三方储存(减少服务器压力). 一.直接上传到服务器 /** * 代码演示 */ //*******UIImagePNGRe ...
- ios开发图片点击放大
图片点击放大,再次点击返回原视图.完美封装,一个类一句代码即可调用.IOS完美实现 创建了一个专门用于放大图片的类,以下为.h文件 #import <Foundation/Foundation. ...
- iOS开发——图片轮播图+单选选项
由于公司开发需要,需要滚动每道评测题, 并且一道评测题单项选择,按钮和文字都可点击选中 (单选比多选复杂一点,但是原理差不多) 1.当初任务紧,代码也没有优化,仅供思路参考,先放几张图 2.代码部分 ...
- iOS开发-图片查看(ScrollView+UIPageControl)
上周没事写了一个简单的图片查看,上次的查看只用到了一个UIImageView,不断的替换背景图片,实现图片之间的切换.通过ScrollView可以很简单的是实现图片之间的查看,设置setPagingE ...
- Java开发图片浏览器--记录
效果 设计思路 需求分析 图片浏览,上/下一张,放大缩小等基本功能.可以继续拓展的功能:缩略图.旋转,画笔修改等.此外,缩放实现较为简单,所以会出现失真.设计此类软件功能可参考ACDSee或irfan ...
- IOS开发-图片尺寸
在这篇文章当中,不会讲述关于具体px pt,分辨率,像素的问题,在这篇文章中,只会谈及到一些展现的问题 如果想了解更多关于pt,px之间的关系可以自行到百度查找相关的答案,或者到以下地址阅读更多相关的 ...
随机推荐
- python基础类型—列表
列表 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li = [‘alex’ ...
- JQuery限制文本框只能输入数字和小数点的方法
<input type="text" class="txt NumText" Width="100px" /> $(func ...
- mysql winx64安装配置方法
1.mysql-5.7.21-winx64.zip解压到自己指定的路径 2.自己新建Data文件夹和my.ini文件 my.ini内容,直接复制修改路径即可 my.ini需要保存为ANSI格式 ,否 ...
- react纯手写全选与取消全选
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- mysql limit 性能问题分析
问题重现 // todo 参考文章: MySQL 单表分页 Limit 性能优化 Scalable MySQL: Avoid offset for large tables 证明为什么用limit时, ...
- VS code -python 使用笔记本
1--使用虚拟环境 |----setting->search: python.venv->设置 venv path (你创建的虚拟环境文件夹所在路径,此处我的是 - 目录下) |---- ...
- 线程同步-SpinWait
这次将描述如何不适用内核模式的方式来使线程等待.SpinWait,它是一个混合同步构造,被设计为使用用户模式等待一段时间,然后切换到内核模式以节省CPU时间. 代码Demo: using System ...
- DEDE暴力破解后台登录页面
DEDE暴力破解后台登录页面 #!/usr/bin/env python '''/* * author = Mochazz * team = 红日安全团队 * env = pyton3 * */ '' ...
- pycharm import pygame 出现报错:No module named 'pygame'
首先发现装的Python 有问题原来的Python3.6.4版本安装完成后Scripts文件夹里空白的,什么也没有,从https://www.python.org/downloads/windows/ ...
- debian使用nginx创建静态文件存储
vim /etc/nginx/sites-available/default 在server下添加 location ~ .*\.(gif|jpg|jpeg|png)$ { expires 24h; ...