iOS_3_图片浏览

来源:互联网 发布:微信开发入门教程 php 编辑:程序博客网 时间:2024/06/05 06:58

最终效果图:





BeyondViewController.h

////  BeyondViewController.h//  03_图片浏览////  Created by beyond on 14-7-22.//  Copyright (c) 2014年 com.beyond. All rights reserved.//#import <UIKit/UIKit.h>@interface BeyondViewController : UIViewController@property (weak, nonatomic) IBOutlet UILabel *pageNoLabel;@property (weak, nonatomic) IBOutlet UIImageView *pictureView;@property (weak, nonatomic) IBOutlet UILabel *descriptionLabel;@property (weak, nonatomic) IBOutlet UIView *viewSetting;- (IBAction)slideValueChanged:(UISlider *)sender;- (IBAction)setting:(UIButton *)sender;// switch 开关- (IBAction)switchClick:(UISwitch *)sender;// 图片大小 缩放- (IBAction)sliderScaleValueChanged:(UISlider *)sender;@end





BeyondViewController.m

////  BeyondViewController.m//  03_图片浏览////  Created by beyond on 14-7-22.//  Copyright (c) 2014年 com.beyond. All rights reserved.//#import "BeyondViewController.h"@interface BeyondViewController (){    // 从mainBundle中加载plist,返回数组    NSArray *_descArray;}@end@implementation BeyondViewController- (void)viewDidLoad{    [super viewDidLoad];    // 从mainBundle中加载plist,返回数组,仅加载一次即可    // sg_bundle模板代码,1,获得.app主要的包;2,返回主要的包中某个文件的fullPath全路径    NSBundle *mainBundle = [NSBundle mainBundle];    NSString *fullPath = [mainBundle pathForResource:@"descs.plist" ofType:nil];    // 成员变量记住,因为其他方法slideValueChanged中要用到    _descArray = [NSArray arrayWithContentsOfFile:fullPath];    // _descriptionLabel.text = _descArray[0];}- (IBAction)slideValueChanged:(UISlider *)sender {    NSLog(@"%d",(int)sender.value);    // 图片名 从0 ~ 15,对应的slide最小值0 最大值15    int pageNo = (int)sender.value;    // 1,控制图片显示    NSString *imageName = [NSString stringWithFormat:@"%d.png",pageNo];    _pictureView.image = [UIImage imageNamed:imageName];    // 2,控制标题显示    _pageNoLabel.text = [NSString stringWithFormat:@"%d/16",(pageNo+1)];    // 3,控制描述显示 plist在模拟器中的全path    // /Users/beyond/Library/Developer/Xcode/DerivedData/03_图片浏览-cwowmkgqqqqmfcfxckpaqtzykyus/Build/Products/Debug-iphonesimulator/03_图片浏览.app/descs.plist    // /Users/beyond/Library/Application Support/iPhone Simulator/7.1/Applications/02291F09-5446-40E2-82AE-18B6D039D88A/03_图片浏览.app/descs.plist    // NSString *descPlistFullPath = [[NSBundle mainBundle] pathForResource:@"descs.plist" ofType:nil];        // _descriptionLabel.text = [_descArray objectAtIndex:pageNo];    _descriptionLabel.text = _descArray[pageNo];}#pragma mark - 设置:1,夜间模式; 2,图片缩放- (IBAction)setting:(UIButton *)sender {    // UIView的类方法 实现动画效果(开始动画)    [UIView beginAnimations:nil context:nil];    // 默认动画持续时间是 0.2    [UIView setAnimationDuration:1];        int winHeight = self.view.bounds.size.height;    CGFloat targetY = _viewSetting.frame.origin.y==winHeight?(winHeight-self.viewSetting.frame.size.height):winHeight;    // 以下三步为OC标准代码,因为OC中不允许直接修该对象中结构体属性的成员的值,要通过中间的临时结构体变量    CGRect frame = self.viewSetting.frame;    frame.origin.y = targetY;    self.viewSetting.frame=frame;    // UIView的类方法 实现动画效果(结束动画)    [UIView commitAnimations];}- (IBAction)switchClick:(UISwitch *)sender {    if (sender.isOn) {        self.view.backgroundColor = [UIColor darkGrayColor];    } else {        self.view.backgroundColor = [UIColor whiteColor];    }}- (IBAction)sliderScaleValueChanged:(UISlider *)sender {    // UIView的类方法 实现动画效果(开始动画)    [UIView beginAnimations:nil context:nil];    // 默认动画持续时间是 0.2    [UIView setAnimationDuration:1];        self.pictureView.transform = CGAffineTransformMakeScale(sender.value, sender.value);        // UIView的类方法 实现动画效果(结束动画)    [UIView commitAnimations];}@end

效果图














1 0
原创粉丝点击