猜谜语

//

//  ViewController.m

//  猜谜语

//

//  Created by Bruce on 15/8/13.

//  Copyright (c) 2015年 Bruce. All rights reserved.

//

 

#import "ViewController.h"

#import "HTTPRequestManager.h"

#import "InfoModel.h"

 

 

@interface ViewController ()

{

    NSTimer *runTimer;

    UITextView *showView;

    

    BOOL isShow;

}

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    

    [self createView];

    

    [self loadData];

}

 

- (void)createView

{

    showView = [[UITextView alloc]initWithFrame:self.view.frame];

    showView.editable = NO;

    showView.selectable = NO;

    showView.font = [UIFont systemFontOfSize:40];

    showView.textAlignment = NSTextAlignmentCenter;

    showView.textColor = [UIColor brownColor];

    [self.view addSubview:showView];

    

    

    UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(showAnswer)];

    [self.view addGestureRecognizer:tap];

    

}

 

- (void)showAnswer

{

    isShow = !isShow;

    

    if (isShow!=NO) {

        

        runTimer.fireDate = [NSDate distantFuture];

        

        showView.textColor = [UIColor orangeColor];

        showView.text = [InfoModel shareManager].Answer;

    }else{

        

        runTimer.fireDate = [NSDate distantPast];

        

        showView.textColor = [UIColor brownColor];

        showView.text = @"";

    }

}

 

- (void)loadData

{

    NSString *url = @"http://apis.baidu.com/myml/c1c/c1c";

    

    [HTTPRequestManager sendGetRequestWithURL:url responseContent:^(id result) {

        

        InfoModel *model = [InfoModel shareManager];

        model.Title = result[@"Title"];

        model.Answer = result[@"Answer"];

        

//        刷新UI 必须在主线程 刷新

        [self performSelectorOnMainThread:@selector(next) withObject:nil waitUntilDone:YES];

        

    }];

    

}

 

- (void)next

{

    showView.text = [InfoModel shareManager].Title;

    

    runTimer = [NSTimer scheduledTimerWithTimeInterval:10 target:self selector:@selector(loadData) userInfo:nil repeats:YES];

}

 

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

@end

 

//

//  InfoModel.h

//  猜谜语

//

//  Created by Bruce on 15/8/13.

//  Copyright (c) 2015年 Bruce. All rights reserved.

//

#import <Foundation/Foundation.h>

@interface InfoModel : NSObject

+ (instancetype)shareManager;

@property (nonatomic,copy) NSString *Title;

@property (nonatomic,copy) NSString *Answer;

@end

//

//  InfoModel.m

//  猜谜语

//

//  Created by Bruce on 15/8/13.

//  Copyright (c) 2015年 Bruce. All rights reserved.

//

#import "InfoModel.h"

static InfoModel *model = nil;

@implementation InfoModel

+ (instancetype)shareManager

{

static dispatch_once_t onceToken;

dispatch_once(&onceToken, ^{

model = [[InfoModel alloc]init];

});

return model;

}

@end

HTTPRequestManager(缓冲效果)

时间: 2024-10-03 14:25:02

猜谜语的相关文章

抢单十八招

第一招    建立信赖感 第二招    派送<感谢信> 第三招    调查开路 第四招    老树发新枝 第五招    挽留即将失去的订户 第六招    让老订户介绍新订户 第七招    体验读者心理需求设计有针对性提问 第八招    不怕拒绝 第九招    利用从众心理 第十招    讨价还价 第十一招  对比取胜 第十二招  学会敲门 第十三招  找到话事人 第十四招  讲故事感染客户 第十五招  死缠烂打 第十六招  乡音乡情 第十七招  关注亚运 第十八招  志在必得 一. 建立信赖感

详细解剖大型H5单页面应用的核心技术点

阐述下项目 Xut.js 开发中一个比较核心的优化技术点,这是一套平台代码,并非某一个插件功能或者框架可以直接拿来使用,核心代码大概是6万行左右(不包含任何插件) .这也并非一个开源项目,不能商业使用,只是为了作者开发方便同步修改代码而上传的源码 描述下,项目提出的概念“无需程序员编程”可批量制作app应用.分2大块,1块是客户端(PPT),默认扩展插件提供用户编辑的界面,平台会把设计逻辑与界面数据编译成前端数据资源包(前端能处理的js.css.图片等资源了),另一个大块就是纯前端部分(Xut.

又是一年月圆时

月是故乡明,一轮明月倒映在清澈的水面上,团团圆圆,为什么远在远方的亲人不能回家团圆? 中秋到了,但却充满惆怅,充满思念. 我想到了我的爷爷,我还告诉他,等着我给他将嫦娥奔月的故事.可是爷爷却等不到了,他永远地走了,去了天堂. 就在前年,我亲爱的爷爷永远的离开了这个世界.当我得知这一个噩耗时,脑袋里空白一片,只有一个声音在脑子里回响,爷爷离开了.还记得在去年中秋节他答应过我,今年我给他讲嫦娥奔月的故事.可是爷爷却不讲信用,在中秋节未到之前便离开了. 今年的月亮是多么圆啊!可惜爷爷是看不到了.或许爷

近半年的读书总结

近半年的时间里读了不少好书,而大多数书籍其实都与技术沾不上边,是适合所有人去读的.当然这期间也学了一些新的技术,比如看完了Python基础教程,学习了QT的程序开发,也开始准备了解Android移动开发的内容.读了这么多书之后有几点明显的感触: 1.    当你学到了越来越多的知识之后,你会发现自己的力量越来越强大,你会发现很多困难你都没那么怕了(这里的困难不一定指技术上的困难,而是指工作或者生活中的一切困难). 2.    除了技术之外原来还有很多精彩,世界上的很多事情都是有道理可循的,比如说

记录一下《猜歌猜谜》应用主要使用的开源库

1.底部导航栏使用开源库是:bottom-navigation-bar 主要代码实现: bottomNavigationBar = (BottomNavigationBar) findViewById(R.id.bottom_navigation_bar); bottomNavigationBar.setMode(BottomNavigationBar.MODE_FIXED); /*bottomNavigationBar.setBackgroundStyle(BottomNavigationBa

3年前中央的重大动作 今年有了新变化

大风骤起站在最前面的我冷笑着看着敌人的冲阵剑锋向前一指喝道给我杀地面开始震颤起来许多小小的碎石仿佛不受到重力控制一样的飞了起来甚至我也感觉到身体很轻仿佛就要被吸飞起来而那条灰色的巨龙则已经横行于高空之中猛然肆虐而来 但是凌雪可不能就这样白白挂掉而且我也宁愿用自己的一次挂掉来印证一下这是否真的就无法以操作来虐掉而且这里也只有我才有机会弄死这个了秦韵虽然身在上面但是她一个小牧师没有什么攻击力要杀的话难道用惩戒那估计得打到驴年马月去了对方的玩家所剩无几也就那几个高手了小蝴蝶这个星月祭祀已经被淡淡稻花香

2018级算法第三次期末-神秘谜语

作为xxnn晚会的宣传题,请ZH安排一下宣传费用 题目描述 心心廿廿晚会就要开始啦,作为软件学院光辉美丽的化身,春天与喜悦之神,光的拟人化,过去一切沉沦与虚伪的终结者,未来美好与正义的开启者--Alvin辉(朱辉上仙) 他有着旋转乾坤的能力,在晚会的抽奖栏目上,他轻敲响指就可以抽中所有的奖品,有一天他找到了某楠,说出了一个谜语,如果猜对了的话就能把大奖抱回家(不存在的). 谜语是这样的: 有一连串无序的小写字母,某楠需要交换序列中相邻的两个元素.使得原序列变成不上升序列的最少的交换次数,就是谜底

20170913自制猜数字游戏

/* 猜数字:系统随机生成一个四位数,请根据下列判断猜出来 A:数值正确,位置正确 B:数值正确,位置不正确 C:数值不正确 */ #include<stdio.h> #include<time.h> #include<stdlib.h> #pragma warning (disable:4996) #define pUCharHead unsigned char * //以数组形式返回n个无重复的随机数,范围可指定[min,max] pUCharHead GenNoR

JavaScript一个猜数字游戏

效果图: 代码: <body> <script type="text/javascript"> window.onload = newgame; //页面载入的时候就开始一个新的游戏 window.onpopstate = popState; //处理历史记录相关事件 var state,ui; //全局变量,在newgame()方法中会对其初始化 function newgame( playagin ){ //开始一个新的猜数字游戏 //初始化一个包含需要的文