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. 编译预处理 -- 带参数的宏定义--【sky原创】

    原文:编译预处理 -- 带参数的宏定义--[sky原创] 如有转载请注明出处   编译预处理  --  带参数的宏定义 前面为输出文件,后面为输入文件 gcc -E -o test.i test.c ...

  2. JS模块与命名空间的介绍二

    区别一:

  3. jmeter参数化之CSV Data Set Config

    在jmeter中,可以用CSV Data Set Config实现参数化. 1.准备参数化数据

  4. 【Linux 工作经常使用命令 】

    1, 批量杀某个程序 比方某个程序叫  url_info.py, 起了若干个进程 . 高速查杀. 先查看 ps aux | grep url_info.py 确认没问题 ,能够杀,则批量kill ps ...

  5. leetcode[94] Unique Binary Search Trees

    给定n,那么从1,2,3...n总共可以构成多少种二叉查找数呢.例如给定3 Given n = 3, there are a total of 5 unique BST's. 1 3 3 2 1 \ ...

  6. C# WinForm程序退出的方法(转)

    转自:http://www.cnblogs.com/yugen/archive/2010/08/10/1796864.html 1.this.Close();   只是关闭当前窗口,若不是主窗体的话, ...

  7. SpringMVC之 数据绑定-1

    SpringMVC学习系列(4) 之 数据绑定-1 在系列(3)中我们介绍了请求是如何映射到一个action上的,下一步当然是如何获取到请求中的数据,这就引出了本篇所要讲的内容—数据绑定. 首先看一下 ...

  8. 你是否听过 TypeScript?

    Type入门(JavaScript的超集)-译   你是否听过 TypeScript? TypeScript 是 JavaScript 的超集,TypeScript结合了类型检查和静态分析,显式接口. ...

  9. 你的flume-ng的第一篇博客

    我在flume-ng 1.1.0 孵化版的时候就开始接触了,自己也搞了一段时间,没事扯扯心得吧. 先说在前面,flume-ng 后面的版本,我没仔细读change log ,比较农民 , 不知道新添了 ...

  10. ubuntu-使用终端配置网络

    文件说明: IP.网关.掩码的配置文件:/etc/network/interfaces DNS配置文件:/etc/resolv.conf 配置步骤: 1)配置有关IP文件 配置IP.网关.掩码这些信息 ...