//
// ViewController.h
// 图片浏览器
//
// Created by on 15/4/14.
// Copyright (c) 2015年 apple. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet UIImageView *imageView;
@property (weak, nonatomic) IBOutlet UILabel *imageValue;
@property (weak, nonatomic) IBOutlet UILabel *imageDesc;
@property (weak, nonatomic) IBOutlet UIView *settingView;
- (IBAction)valueChange:(UISlider *)sender;
- (IBAction)settingButton;
- (IBAction)darkModel:(UISwitch *)sender;
- (IBAction)imageSize:(UISlider *)sender;
@end
//
// ViewController.m
// 图片浏览器
//
// Created by on 15/4/14.
// Copyright (c) 2015年 apple. All rights reserved.
//
#import "ViewController.h"
@interface ViewController ()
{
NSArray *_imageMess;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
// 要访问项目中的所有资源用mainBundle
NSBundle *bundle = [NSBundle mainBundle];
NSString *filePath = [bundle pathForResource:@"imageMessages" ofType:@"plist"];
// 读取文件要传入绝对路径
_imageMess = [NSArray arrayWithContentsOfFile:filePath];
NSDictionary *dic = _imageMess[0];
NSString *imageName = [dic objectForKey:@"icon"];
_imageView.image = [UIImage imageNamed:imageName];
NSString *imageMessage = [dic objectForKey:@"title"];
_imageDesc.text = imageMessage;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)valueChange:(UISlider *)sender {
// 这里的%.f即为不保留小数位,四舍五入
// NSString *imageName = [NSString stringWithFormat:@"%.f", sender.value];
NSDictionary *dic = _imageMess[(int)sender.value - 1];
NSString *imageName = [dic objectForKey:@"icon"];
_imageView.image = [UIImage imageNamed:imageName];
NSString *imageValue = [NSString stringWithFormat:@"%.f/%.f", sender.value, sender.maximumValue];
_imageValue.text = imageValue;
NSString *imageMessage = [dic objectForKey:@"title"];
_imageDesc.text = imageMessage;
}
#pragma mark 注意这里的写法,如果信息处理不同的话,多用这种方式重构代码
-(void)animationCustom:(void (^)())block {
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.35];
block();
[UIView commitAnimations];
}
- (IBAction)settingButton {
CGFloat viewHeight = _settingView.frame.size.height;
[self animationCustom:^{
if (_settingView.frame.origin.y == self.view.frame.size.height) {
CGRect frame = _settingView.frame;
frame.origin.y -= viewHeight;
_settingView.frame = frame;
} else {
CGRect frame = _settingView.frame;
frame.origin.y += viewHeight;
_settingView.frame = frame;
}
}];
}
- (IBAction)darkModel:(UISwitch *)sender {
if (sender.on) {
self.view.backgroundColor = [UIColor darkGrayColor];
} else {
self.view.backgroundColor = [UIColor whiteColor];
}
}
- (IBAction)imageSize:(UISlider *)sender {
_imageView.transform = CGAffineTransformMakeScale(sender.value, sender.value);
}
@end
更多信息请查看IT技术专栏