#import "RootViewController.h"

@interface RootViewController ()
{
    UILabel *scoreLabel;

}

@end

@implementation RootViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    
    
    //longSlider
    UISlider *longSlider = [[UISlider alloc] initWithFrame:CGRectMake(0, 60, self.view.frame.size.width, 40)];
    longSlider.tag = 101;
    longSlider.maximumValue = 100;
    longSlider.minimumValue = 0;
    longSlider.userInteractionEnabled = NO;
    longSlider.value = arc4random() % 101;
    //[longSlider addTarget:self action:@selector(longSlider:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:longSlider];
    [longSlider release];
    
    //shortSlider
    UISlider *shortSlider = [[UISlider alloc] initWithFrame:CGRectMake(0, 120, self.view.frame.size.width - 100, 40)];
    shortSlider.tag = 102;
    shortSlider.maximumValue = 100;
    shortSlider.minimumValue = 0;
    [self.view addSubview:shortSlider];
    [shortSlider release];
    
    
    UILabel *showLabel = [[UILabel alloc] initWithFrame:CGRectMake(40, 200, 40, 40)];
    showLabel.text = @"得分";
    [self.view addSubview:showLabel];
    [showLabel release];
    
    scoreLabel = [[UILabel alloc] initWithFrame:CGRectMake(100, 200, 200, 40)];
    scoreLabel.tag = 103;
    scoreLabel.layer.borderWidth = 2;
    scoreLabel.layer.borderColor = [UIColor redColor].CGColor;
    scoreLabel.layer.cornerRadius = 10;
    [self.view addSubview:scoreLabel];
    [scoreLabel release];
    
    UIButton *okButton = [UIButton buttonWithType:UIButtonTypeSystem];
    okButton.frame = CGRectMake(40, 300, 100, 50);
    [okButton setTitle:@"OK" forState:UIControlStateNormal];
    okButton.layer.borderWidth = 2;
    okButton.layer.cornerRadius = 10;
    [okButton addTarget:self action:@selector(okButton:) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:okButton];
    
    
    UIButton *againButton = [UIButton buttonWithType:UIButtonTypeSystem];
    againButton.frame = CGRectMake(220, 300, 100, 50);
    [againButton setTitle:@"重新" forState:UIControlStateNormal];
    againButton.layer.borderWidth = 2;
    againButton.layer.cornerRadius = 10;
    [againButton addTarget:self action:@selector(pressButton) forControlEvents:UIControlEventTouchUpInside];
    [self.view addSubview:againButton];
    
    
    
    // Do any additional setup after loading the view.
}

- (void)okButton:(UIButton *)aButton
{
    UISlider *lSlider = (UISlider *)[self.view viewWithTag:101];
    UISlider *sSlider = (UISlider *)[self.view viewWithTag:102];
    UILabel *lable = (UILabel *)[self.view viewWithTag:103];
    sSlider.userInteractionEnabled = NO;
    if (lSlider.value == sSlider.value) {
        lable.text = @"100";
        UIAlertView *aa = [[UIAlertView alloc] initWithTitle:@"提示" message:@"不是人" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
        [aa show];
        [aa release];
    } else {
    
        float temp = 100 - abs((int)(lSlider.value - sSlider.value)) * 5;
        if (temp > 90 && temp < 100) {
            UIAlertView *aa = [[UIAlertView alloc] initWithTitle:@"提示" message:@"牛人" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
            [aa show];
            [aa release];
        } else if (temp > 80 && temp < 90) {
        
            UIAlertView *aa = [[UIAlertView alloc] initWithTitle:@"提示" message:@"眼力不错" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
            [aa show];
            [aa release];
        
        } else if (temp > 60 && temp < 80) {
        
            UIAlertView *aa = [[UIAlertView alloc] initWithTitle:@"提示" message:@"一般" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
            [aa show];
            [aa release];

} else {
        
            UIAlertView *aa = [[UIAlertView alloc] initWithTitle:@"提示" message:@"眼瞎了吧!" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
            [aa show];
            [aa release];

}
    
        scoreLabel.text = [NSString stringWithFormat:@"%.2f", temp];
    }

}
- (void)pressButton
{
    
    UISlider *slider = (UISlider *)[self.view viewWithTag:101];
    //slider.value = arc4random() % 101;
    [slider setValue:arc4random() % 61 + 20 animated:YES];
    UISlider *sSlider = (UISlider *)[self.view viewWithTag:102];
    sSlider.userInteractionEnabled = YES;
    sSlider.value = 0;
    
    UILabel *lable = (UILabel *)[self.view viewWithTag:103];
    lable.text = @"0";
   // [slider setValue:arc4random() animated:YES];
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

 

UI通过UISlider编写游戏第六感的更多相关文章

  1. OCulus Rift 游戏开发六原则

    本文章由cartzhang编写,转载请注明出处. 所有权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/46685477 作者:car ...

  2. 使用 jQuery UI Widget Factory 编写有状态的插件(Stateful Plugins)

    使用 jQuery UI Widget Factory 编写有状态的插件(Stateful Plugins) Note 这一章节的内容是基于 Scott Gonzalez 一篇博客 Building ...

  3. Python turtle 模块可以编写游戏,是真的吗?

    1. 前言 turtle (小海龟) 是 Python 内置的一个绘图模块,其实它不仅可以用来绘图,还可以制作简单的小游戏,甚至可以当成简易的 GUI 模块,编写简单的 GUI 程序. 本文使用 tu ...

  4. jQuery 使用 jQuery UI 部件工厂编写带状态的插件(翻译)

    首先,我们要创建一个progress bar,它只允许我们简单的设置进度值.正如我们接下来将要看到的,我们需要通过调用 jQuery.widget 及其两个参数来实现这一操作,这两个参数分别是:将要创 ...

  5. UGUI世界坐标转换为UI本地坐标(游戏Hud的实现)

    实现世界坐标的原理是: 世界坐标和UGUI的坐标分属两个坐标系,他们之间是无法进行转换的,需要通过屏幕坐标系来进行转换(因为屏幕坐标是固定的),即先将游戏场景中的世界坐标通过游戏场景Camera转化为 ...

  6. python基础----以面向对象的思想编写游戏技能系统

    1. 许多程序员对面向对象的思想都很了解,并且也能说得头头是道,但是在工作运用中却用的并不顺手. 当然,我也是其中之一. 不过最近我听了我们老师的讲课,对于面向对象的思想有了更深的理解,今天决定用一个 ...

  7. AJ学IOS(06)UI之iOS热门游戏_超级猜图

    AJ分享,必须精品 先看效果图 思路 需求分析 1,搭建界面 1>上半部分,固定的,用Storyboard直接连线(OK) 2>下半部分,根据题目的变化,不断变化和调整,用代码方式实现比较 ...

  8. 使用Xamarin开发移动应用示例——数独游戏(六)使用数据库

    项目代码可以从Github下载:https://github.com/zhenl/ZL.Shudu .代码随项目进度更新. 现在我们希望为应用增加更多的功能,比如记录每个完成的游戏,可以让用户自己添加 ...

  9. 解读Unity中的CG编写Shader系列六(漫反射)

    转自 http://www.itnose.net/detail/6116553.html 如果前面几个系列文章的内容过于冗长缺乏趣味着实见谅,由于时间原因前面的混合部分还没有写完,等以后再补充,现在开 ...

随机推荐

  1. KINavigationController使用演示例子

    代码地址如下:http://www.demodashi.com/demo/12905.html 运行效果 实现思路 创建pan手势,添加到页面中,监听手势的动作.重写push的方法,在push之前截图 ...

  2. Eclipse3.4以上使用dropins的插件安装方式

    Eclipse3.4以上版本支持使用dropins的插件安装方式,使用方便,共有四种使用方法: 1. 最简单的,直接将jar包放到dropins目录下eclipse/    dropins/ 2. 传 ...

  3. Flume、Kafka、Storm结合

    Todo: 对Flume的sink进行重构,调用kafka的消费生产者(producer)发送消息; 在Sotrm的spout中继承IRichSpout接口,调用kafka的消息消费者(Consume ...

  4. Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(二)

    本文继<Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(一)>,接着讲述MapReduce作业在MRAppMaster上处理总流程,继上篇讲到作业初始化之后的作 ...

  5. js jQuery函数 $.ajax()

    $.ajax() //$表示是jQuery cache:  要求为Boolean类型的参数,默认为true(当dataType为script时,默认为false),设置为false将不会从浏览器缓存中 ...

  6. 第一百九十节,jQuery,编辑器插件

    jQuery,编辑器插件 学习要点: 1.编辑器简介 2.引入 uEditor 编辑器(Editor),一般用于类似于 word 一样的文本编辑器,只不过是编辑为 HTML 格式的.分类纯 JS 类型 ...

  7. 第一百八十八节,jQuery,选项卡 UI

    jQueryUI,选项卡 UI 学习要点: 1.使用 tabs 2.修改 tabs 样式 3.tabs()方法的属性 4.tabs()方法的事件 5.tabs 中使用 on 选项卡(tab),是一种能 ...

  8. Struts2 是什么?

    Struts2是流行和成熟的基于MVC设计模式的Web应用程序框架. Struts2不只是Struts1下一个版本,它是一个完全重写的Struts架构. WebWork框架开始以Struts框架为基础 ...

  9. 003android初级篇之【转】Android开发中颜色的定义方法

    正好用到颜色的定义,但脑子里没有记住具体,转载一篇加强印象 1.使用Color类的常量,如: int color = Color.BLUE; // 创建一个蓝色 是使用Android提供的颜色 int ...

  10. HDU 3080 The plan of city rebuild(除点最小生成树)

    题意  一个城市原来有l个村庄 e1条道路  又添加了n个村庄 e2条道路  后来后销毁了m个村庄  与m相连的道路也销毁了  求使全部未销毁村庄相互连通最小花费  不能连通输出what a pity ...