Objective-C ,ios,iphone开发基础:快速实现一个简单的图片查看器
新建一个single view 工程:
关闭ARC , 在.xib视图文件上拖放一个UIImageView 两个UIButton ,一个UISlider ,布局如图。
并为他们连线,
UIImageView 和 UISlider 分别定义插座变量,两个 UIButton 分别 连接两个Action next和previous ,在为 UISlider 连接一个Action 事件。
再在.h 文件中声明两个实例变量。 NSInteger index ; NSMutableArray* arrayPic ; 一个用来记录当前图片的index,一个用来做图片的容器,
用UISlider 来控制图片的透明度 (alpha 属性)。在slider 的界面构建起动作中添加代码,让图片的透明度等于 slider的value。
整个控制器类中的代码:
//// wsqViewController.h// picLook//// Created by administrator on 13-9-5.// Copyright (c) 2013年 __MyCompanyName__. All rights reserved.//#import <UIKit/UIKit.h>@interface wsqViewController : UIViewController { UIImageView *imageView; UISlider *slider; NSInteger index ; NSMutableArray* arrayPic ; }@property (retain, nonatomic) IBOutlet UIImageView *imageView;@property (retain, nonatomic) IBOutlet UISlider *slider;- (IBAction)sliderChangeValued:(id)sender;- (IBAction)next:(id)sender;- (IBAction)previous:(id)sender;@end
//// wsqViewController.m// picLook//// Created by administrator on 13-9-5.// Copyright (c) 2013年 __MyCompanyName__. All rights reserved.//#import "wsqViewController.h"@implementation wsqViewController@synthesize imageView;@synthesize slider;- (void)didReceiveMemoryWarning{ [super didReceiveMemoryWarning]; // Release any cached data, images, etc that aren't in use.}#pragma mark - View lifecycle- (void)viewDidLoad{ [super viewDidLoad]; //获取mainbudle下所有 jpg格式的图片, arrayPic = [[NSMutableArray alloc ] initWithArray: [[NSBundle mainBundle] pathsForResourcesOfType:@"jpg" inDirectory:nil]]; index = 0; NSLog(@"%@",arrayPic); }- (void)viewDidUnload{ [self setImageView:nil]; [self setSlider:nil]; [super viewDidUnload]; // Release any retained subviews of the main view. // e.g. self.myOutlet = nil;}- (void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated];}- (void)viewDidAppear:(BOOL)animated{ [super viewDidAppear:animated];}- (void)viewWillDisappear:(BOOL)animated{ [super viewWillDisappear:animated];}- (void)viewDidDisappear:(BOOL)animated{ [super viewDidDisappear:animated];}- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{ // Return YES for supported orientations return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);}- (void)dealloc { [arrayPic release]; [imageView release]; [slider release]; [super dealloc];}- (IBAction)sliderChangeValued:(id)sender { self.imageView.alpha = slider.value;}- (IBAction)next:(id)sender { if(index == [arrayPic count]){ index = 0; } self.imageView.image = [UIImage imageWithContentsOfFile:[arrayPic objectAtIndex:index]]; index++;}- (IBAction)previous:(id)sender { if(index == -1){ index = ([arrayPic count] -1); } self.imageView.image = [UIImage imageWithContentsOfFile:[arrayPic objectAtIndex:index]]; index--;}@end