图片连续播放、UISegmentedControl、UISlider、UISwitch、UIStepper

MainViewController.h

#import <UIKit/UIKit.h>
@interface MainViewController : UIViewController
@property(nonatomic,retain)UISwitch*leftSwitch;
@end

MainViewController.m

#import "MainViewController.h"
@interface MainViewController ()
@end
@implementation MainViewController
@synthesize leftSwitch;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}
- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    
    //首先创建一个UIImageView
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 170, 280, 300)];
    imageView.backgroundColor = [UIColor brownColor];
//    imageView.alpha = 0.3;
    [self.view addSubview:imageView];
    [imageView release];
    
    //给ImageView设置要播放的图片数组
    //1.创建一个空的可变的数组
    NSMutableArray *images = [NSMutableArray array];
    for (int i = 0; i < 22; i++) {
        //2.利用for循环产生UIImage对象
        NSString *name = [NSString stringWithFormat:@"Zombie%d.tiff", i];
        //产生图片对象
        UIImage *image = [UIImage imageNamed:name];
        //添加到数组中
        [images addObject:image];
    }
    
    imageView.tag = 1000;
    //给imageView赋值
    imageView.animationImages = images;
    //播放完全部图片的时间
    imageView.animationDuration = 0.1;
    //重复播放的次数
    imageView.animationRepeatCount = 0;  //如果设置为0,则为不限次
    //启动动画播放图片
//    [imageView startAnimating];
    [imageView stopAnimating];
    
    
    
    
    //UISegmentedControl
    UISegmentedControl *segmeng = [[UISegmentedControl alloc] initWithItems:@[@"僵尸",@"丧尸",@"吸血鬼"]];
    segmeng.frame = CGRectMake(40, 35, 240, 30);
    segmeng.backgroundColor = [UIColor magentaColor];
    segmeng.alpha = 0.3;
    segmeng.layer.cornerRadius = 7;
    segmeng.tintColor = [UIColor yellowColor];//改变颜色
    // 绑定一个触发事件(方法)
    [segmeng addTarget:self action:@selector(segmengAction:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:segmeng];
    [segmeng release];
    
    //UISlider的使用
    UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(40, 70, 240, 30)];
    
    [slider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
    //改变slider的最大值
    slider.maximumValue = 10;
    //最小值
    slider.minimumValue = 0.1;
    //slider.maximumValueImage
    [self.view addSubview:slider];
    [slider release];
    
    //UISwitch的使用
    leftSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(40, 100, 30, 20)];
    [leftSwitch addTarget:self action:@selector(switchAction:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:leftSwitch];
    
    
    //UIStepper 的使用
    
    UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMake(160  , 100, 40, 20)];
    stepper.backgroundColor = [UIColor blueColor];
    stepper.alpha = 0.3;
    // Set action target and action for a particular value changed event
    [stepper addTarget:self action:@selector(stepper:) forControlEvents:UIControlEventValueChanged];
    // Set min and max
    [stepper setMinimumValue:0.1];
    [stepper setMaximumValue:10];
    [stepper setWraps:YES];   //if YES, value wraps from min <-> max. default = NO
//    [stepper setContinuous:NO];
    [stepper setStepValue:0.5];//设置每次跳动的值
    [self.view addSubview:stepper];
    
    
    
}
- (void)stepper:(UIStepper *)stepper
{
    UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];
    imageView.animationDuration = stepper.value;
    [imageView startAnimating];
    NSLog(@"%f", stepper.value);
}
- (void)switchAction:(id)sender
{
    UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];
    UISwitch *mySwitch = (UISwitch *)sender;
    BOOL setting = mySwitch.isOn;
    if (setting) {
        [imageView startAnimating];
        NSLog(@"YES");
    }else{
        [imageView stopAnimating];
        NSLog(@"NO");
    }
    [leftSwitch setOn:setting animated:YES];
//    [rightSwitch setOn:setting animated:YES];
}
- (void)sliderAction:(UISlider *)slider
{
    //改变僵尸的移动速度
    UIImageView *imageView = (UIImageView *)[self.view viewWithTag:1000];
    //利用slider的值改变imageView播放一次需要的时间
    imageView.animationDuration = slider.value;
    [imageView startAnimating];  //在重新播放
    NSLog(@"%f",slider.value);
}
- (void)segmengAction:(UISegmentedControl *)seg
{
    NSLog(@"%d",seg.selectedSegmentIndex);
    if (0 == seg.selectedSegmentIndex) {
        NSLog(@"僵尸");
    }else if (1 == seg.selectedSegmentIndex){
        NSLog(@"丧尸");
    }else if(2 == seg.selectedSegmentIndex){
        NSLog(@"吸血鬼");
    }
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/
@end
时间: 2024-10-26 08:17:30

图片连续播放、UISegmentedControl、UISlider、UISwitch、UIStepper的相关文章

HTML DOM innerHTML 属性及实现图片连续播放

定义和用法 innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML. 语法 tablerowObject.innerHTML=HTML 实例 下面的例子返回了表格行的 inner HTML: <html> <head> <script type="text/javascript"> function getInnerHTML() { alert(document.getElementById("tr1").inn

ios中常见的几种控件.(UISlider,UISwitch,UIStepper,UISegmentedControl)

一.滑块控件(UISlider)  效果如下 注:系统原来效果如下 具体功能运用: ①创建滑块控件(UISlider),设置控件大小,并添加到window视图上,后释放 UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 30, 280, 100)]; [self.window addSubview:slider];  [slider release]; ②设置最大值,最小值,以及开始时滑动条所在的位置 //设置最大

【学习ios之路:UI系列】ios中常见的几种控件.(UISlider,UISwitch,UIStepper,UISegmentedControl)

一.滑块控件(UISlider)  效果如下 注:系统原来效果如下 具体功能运用: ①创建滑块控件(UISlider),设置控件大小,并添加到window视图上,后释放 UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(20, 30, 280, 100)]; [self.window addSubview:slider];  [slider release]; ②设置最大值,最小值,以及开始时滑动条所在的位置 //设置最大

android项目 之 记事本(13) ----- 查看图片及播放录音

本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020 今天就来实现下查看图片及录音的功能,在编辑或者浏览记事时,点击图片,打开一个自定义Activity(当然了,也可以调用系统的图库来查看)来查看所添加的图片的原始图片,而不是缩放后的图片,同理,用自定义Activity来查看录音文件,实现播放录音的功能.上图: 从图中也可以看出,我们首先要创建两个Activity,当然了,布局文件也是少不了的,如下: activity_show_

salesforce 零基础学习(六十一)apex:component简单使用以及图片轮转播放的实现

有的时候,我们项目有可能有类似需求:做一个简单的图像轮转播放功能,不同的VF页面调用可以显示不同的图片以及不同的图片描述.这种情况,如果在每个页面单独处理相关的图像轮转播放则显得代码特别冗余,此种情况下适合使用apex:component实现,将图像轮转的功能做成一个组件,图像的URL以及图像的描述信息可以作为参数传递进来,不同的VF可以放置不同的图像 URLS 和描述信息. 一.apex:component简单用法介绍: apex:component作为预定义的组件通常需要VF页面进行相关传值

关于html5 video的连续播放

<!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>关于html5 video的连续播放</title> </head> <body> <video id="video" autoplay="" controls="control

想控制GIF图片动画播放吗?试试gifffer.js

在线演示:http://www.gbtags.com/gb/demoviewer/3578/c6bec39a-61ae-4017-8e23-e0bc1eeb740f/example|index.html.htm 大家可能都斯通见惯了互联网上普遍使用的GIF图片,但是有没有想过让用户自己尝试控制GIF动画的播放呢?在今天这篇文章中,我们将介绍一个超棒的Javascript小类库 - gifffer.js,它可以帮助你添加控制GIF动画功能,想不想尝试一下? 如何使用? 首先引用JS,如下: <sc

图片帧播放性能优化及音频播放路径

/** *  图片帧播放 */ -(void)animationWithTomImageName:(NSString *)imageName andWithCount:(int)count { if ([self.tomImage isAnimating]) { return;//如果有动画在执行其他动画就不能执行 } NSMutableArray *imageArray = [NSMutableArray array]; for (int i = 0; i < count; i ++) { N

使用WPF Animated GIF实现GIF图片的播放

这个类库很方便,也很简单:http://wpfanimatedgif.codeplex.com/ 参考博客:http://blog.csdn.net/gqqnb/article/details/7213449 使用WPF Animated GIF实现GIF图片的播放