iOS抽奖程序


代码下载地址: http://vdisk.weibo.com/s/HKehU




我们要先写一个数据模型:Model.h
#import <Foundation/Foundation.h>

@interface Model : NSObject
@property (strong,nonatomic) NSArray* ClassArray; @end

Model.m代码如下:

#import "Model.h"

@implementation Model
@synthesize ClassArray = _ClassArray;
-(id)init
{
if (self = [super init]) {
self.ClassArray = [[NSArray alloc] initWithObjects:@"ddd",@"aaa",@"vvv",@"fff",nil];
}
return self;
}
@end

ViewController.h

#import <UIKit/UIKit.h>
#import "Model.h"
@interface ViewController : UIViewController @property (strong,nonatomic) UILabel* LuckyLabel;
@property (strong,nonatomic) Model* myModel;
@property (strong,nonatomic) NSTimer* TimeController;
@property (strong,nonatomic) UIButton* TimeButton;
@property (assign,nonatomic) BOOL TimeBool;
-(void)StopTime;
-(void)addLabel;
-(void)addModel;
-(void)addTime;
-(void)addButton;
@end



ViewController.m

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
TimeBool = YES; UIImageView* backImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"002.png"]]; backImageView.frame = CGRectMake(0, 0, 768, 1024);
[self.view addSubview:backImageView];
[self addLabel]; [self addButton]; }

添加标签
-(void)addLabel
{
self.LuckyLabel = [[UILabel alloc] initWithFrame:CGRectMake(300, 200, 260, 200)];
[self.LuckyLabel setFont:[UIFont fontWithName:@"Verdana" size:63]];
self.LuckyLabel.backgroundColor = [UIColor clearColor];
self.LuckyLabel.textAlignment= UITextAlignmentCenter;
[self.view addSubview:self.LuckyLabel];
UILabel* Title = [[UILabel alloc] initWithFrame:CGRectMake(200, 20, 350, 200)];
Title.backgroundColor = [UIColor clearColor];
Title.textAlignment = UITextAlignmentCenter;
[Title setFont:[UIFont fontWithName:@"Verdana" size:30]];
Title.text = @"幸运大抽奖";
[self.view addSubview:Title];
UILabel* NameLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 200, 260, 200)];
NameLabel.textAlignment = UITextAlignmentCenter;
[NameLabel setFont:[UIFont fontWithName:@"Verdana" size:50]];
NameLabel.backgroundColor = [UIColor clearColor]; NameLabel.text = @"幸运学生:";
[self.view addSubview:NameLabel]; }

添加模型数据
-(void)addModel
{
if (m_pInt ==self.myModel.ClassArray.count) {
m_pInt = 0;
} self.LuckyLabel.text = [self.myModel.ClassArray objectAtIndex:m_pInt];
m_pInt++; }

添加定时器

-(void)addTime
{
self.TimeController = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(addModel) userInfo:nil repeats:YES];
}

添加按钮
-(void)addButton
{
self.myModel = [[Model alloc] init];
self.TimeButton = [UIButton buttonWithType:UIButtonTypeCustom];
self.TimeButton.frame = CGRectMake(266, 800, 200, 100);
[self.TimeButton setTitle:@"开始抽奖" forState:UIControlStateNormal];
self.TimeButton.titleLabel.textAlignment = UITextAlignmentCenter;
[self.TimeButton.titleLabel setFont:[UIFont fontWithName:@"Verdana" size:35]];
[self.TimeButton addTarget:self action:@selector(StopTime) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:self.TimeButton];
}

暂停方法

-(void)StopTime
{
if (TimeBool) {
[self addTime];
TimeBool = NO;
[self.TimeButton setTitle:@"停止" forState:UIControlStateNormal]; }
else{
//Time停止
[self.TimeController invalidate];
TimeBool = YES;
[self.TimeButton setTitle:@"开始抽奖" forState:UIControlStateNormal];
}
}

iOS抽奖程序的更多相关文章

  1. iOS 应用程序生命周期

    开发应用程序都要了解其生命周期. 今天我们接触一下iOS应用程序的生命周期, iOS的入口在main.m文件: int main(int argc, char * argv[]) { @autorel ...

  2. [ios基础]IOS应用程序的生命周期问题

    —程序的生命周期         a.程序的生命周期是指应用程序启动到应用程序结束整个阶段的全过程         b.每一个IOS应用程序都包含一个UIApplication对象,IOS系统通过该U ...

  3. iOS应用程序的生命周期

    iOS应用程序一般都是由自己编写的代码和系统框架(system frameworks)组成,系统框架提供一些基本infrastructure给所有app来运行,而你提供自己编写的代码来定制app的外观 ...

  4. 使用jQuery+PHP+Mysql实现抽奖程序

    抽奖程序在实际生活中广泛运用,由于应用场景不同抽奖的方式也是多种多样的.本文将采用实例讲解如何利用jQuery+PHP+Mysql实现类似电视中常见的一个简单的抽奖程序. 查看演示 本例中的抽奖程序要 ...

  5. iOS app 程序启动原理

    iOS app 程序启动原理 Info.plist: 常见设置     建立一个工程后,会在Supporting files文件夹下看到一个"工程名-Info.plist"的文件, ...

  6. 发布iOS应用程序到苹果APP STORE完整流程

    参考:http://blog.csdn.net/mad1989/article/details/8167529(xcode APP 打包以及提交apple审核详细流程(新版本更新提交审核)) http ...

  7. 从C#到Objective-C,循序渐进学习苹果开发(5)--利用XCode来进行IOS的程序开发

    本随笔系列主要介绍从一个Windows平台从事C#开发到Mac平台苹果开发的一系列感想和体验历程,本系列文章是在起步阶段逐步积累的,希望带给大家更好,更真实的转换历程体验.前面几篇随笔主要介绍C#和O ...

  8. jQuery幸运大转盘_jQuery+PHP抽奖程序的简单实现

    jQuery幸运大转盘_jQuery+PHP抽奖程序的简单实现 在线实例 查看演示 完整代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...

  9. 25个增强iOS应用程序性能的提示和技巧(高级篇)(2)

    25个增强iOS应用程序性能的提示和技巧(高级篇)(2) 2013-04-16 14:56 破船之家 beyondvincent 字号:T | T 在开发iOS应用程序时,让程序具有良好的性能是非常关 ...

随机推荐

  1. Cf 444C DZY Loves Colors(段树)

    DZY loves colors, and he enjoys painting. On a colorful day, DZY gets a colorful ribbon, which consi ...

  2. 我的MYSQL学习心得(十三)

    原文:我的MYSQL学习心得(十三) 我的MYSQL学习心得(十三) 我的MYSQL学习心得(一) 我的MYSQL学习心得(二) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYS ...

  3. 从零开始学习jQuery(剧场版) 你必须知道的javascript

    原文:从零开始学习jQuery(剧场版) 你必须知道的javascript 一.摘要 本文是jQuery系列教程的剧场版, 即和jQuery这条主线无关, 主要介绍大家平时会忽略的一些javascri ...

  4. Java 之JavaBean 、EJB 和POJO

    由于是创业公司,开发人员较少,所以公司临时决定让几个C的程序猿临时客串Java.所以避免不了有很多基础问题,今天就有两个人都问我,JavaBean和POJO的区别,我可按照自己的理解给他们大致说了下, ...

  5. Fluent Validation

    .NET业务实体类验证组件Fluent Validation   认识Fluent Vaidation. 看到NopCommerce项目中用到这个组建是如此的简单,将数据验证从业务实体类中分离出来,真 ...

  6. 有return如果是try catch finally运行命令

    背景: 昨天一个朋友出去采访,遇到这样的问题:"C#  catch那里return.finally也弄它运行?" 个人总结实践: 1.无论有木有出现异常.finally块中代码都会 ...

  7. hdu 2795 段树--点更新

    http://acm.hdu.edu.cn/showproblem.php?pid=2795 在第一和第三多学校都出现线段树,我在比赛中并没有这样做.,热身下,然后31号之前把那两道多校的线段树都搞了 ...

  8. 架构师Jack专访:全面认识软件测试架构师

    ◇ 测试架构师的职责 测试的职业通道基本是管理线和技术线两条路. 管理线主要的职责:更多是项目管理和资源管理. 技术线主要的职责:更多是技术管理和业务知识. 软件测试架构师更多就是技术线的带头人.管理 ...

  9. Spring.NET学习

    Spring.NET学习笔记——目录(原)   目录 前言 Spring.NET学习笔记——前言 第一阶段:控制反转与依赖注入IoC&DI Spring.NET学习笔记1——控制反转(基础篇) ...

  10. boost------signals2的使用1(Boost程序库完全开发指南)读书笔记

    signals2基于Boost的另一个库signals,实现了线程安全的观察者模式.在signals2库中,观察者模式被称为信号/插槽(signals and slots),他是一种函数回调机制,一个 ...