Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 更改特定日期特定时间段的UILabel文本_Ios - Fatal编程技术网

Ios 更改特定日期特定时间段的UILabel文本

Ios 更改特定日期特定时间段的UILabel文本,ios,Ios,首先,请允许我为提出一个对99%的观众来说无疑是无聊的问题而道歉。我寻找并遇到了不同的想法,但似乎无法让我的头周围实施他们 基本上我想做的就是有一个UILabel,上面写着“这是一个测试”,而不是2个小时,比如说在周五下午4点到6点之间,它会说“这不是一个测试”,然后从下午6点01分开始,它会回复为“这是一个测试”,并会每周五重复 我正在使用MarqueeLabel,它是UILabel的一个子类,这是通过Interface Builder和viewDidLoad中的以下代码完成的 self.sc

首先,请允许我为提出一个对99%的观众来说无疑是无聊的问题而道歉。我寻找并遇到了不同的想法,但似乎无法让我的头周围实施他们

基本上我想做的就是有一个
UILabel
,上面写着“这是一个测试”,而不是2个小时,比如说在周五下午4点到6点之间,它会说“这不是一个测试”,然后从下午6点01分开始,它会回复为“这是一个测试”,并会每周五重复

我正在使用MarqueeLabel,它是
UILabel
的一个子类,这是通过Interface Builder和viewDidLoad中的以下代码完成的

self.scrollingLabel.marqueeType = MLContinuous;

self.scrollingLabel.scrollDuration = 40.0f;

self.scrollingLabel.fadeLength = 10.0f;

self.scrollingLabel.text = @"This is a test";

self.scrollingLabel.userInteractionEnabled = YES;
UITapGestureRecognizer *tapRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(pauseTap:)];

tapRecognizer.numberOfTapsRequired = 1;

tapRecognizer.numberOfTouchesRequired = 1;

[self.scrollingLabel addGestureRecognizer:tapRecognizer];

self.scrollingLabel.layer.shadowColor = [UIColor blackColor].CGColor;

self.scrollingLabel.layer.shadowOffset = CGSizeMake(1.0f,1.0f);

self.scrollingLabel.layer.masksToBounds = NO;

self.scrollingLabel.layer.shadowRadius = 1.5f;

self.scrollingLabel.layer.shadowOpacity = 0.6;
再次道歉,如果这没有意义,但我是非常新的Xcode,这是我的第一个问题堆栈溢出

如果能为我指出正确的方向,我将不胜感激。

[NSTimer scheduledTimerWithTimeInterval:1.0
[NSTimer scheduledTimerWithTimeInterval:1.0
    target:self
    selector:@selector(targetMethod)
    userInfo:nil
    repeats:NO];
put this line to `viewDidLoad` method



And

-(void)targetMethod{
        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"EEE HH mm"];
 NSDate *dt = [NSDate date];
 NSString *dayAString = [formatter stringFromDate:dt];
 NSArray *array = [dayAString componentsSeparatedByString: @" "];
 if([[array objectAtIndex:0] isEqualToString:@"Friday"] && [[array objectAtIndex:1] intValue]>=4 &&  [[array objectAtIndex:1] intValue]<=6 && [[array objectAtIndex:2] intValue]>=0 && [[array objectAtIndex:2] intValue]<=59)
       {
               self.scrollingLabel.text=@"this is not a test";
                 NSLog(@"On Air");
       }
       else{
               self.scrollingLabel.text=@"This is a test";
                  NSLog(@"Off Air");
       }
}
目标:自我 选择器:@selector(targetMethod) 用户信息:无 重复:否]; 将此行置于“viewDidLoad”方法 及 -(无效)目标方法{ NSDateFormatter*格式化程序=[[NSDateFormatter alloc]init]; [格式化程序setDateFormat:@“EEE HH mm”]; NSDate*dt=[NSDate日期]; NSString*dayAString=[formatter stringFromDate:dt]; NSArray*数组=[dayAString组件由字符串分隔:@”“]; 如果([[array objectAtIndex:0]IseQualtString:@“Friday”]&&[[array objectAtIndex:1]intValue]>=4&&[[array objectAtIndex:1]intValue]=0&&[[array objectAtIndex:2]intValue]
[NSTimer scheduledTimerWithTimeInterval:1.0
目标:自我
选择器:@selector(targetMethod)
用户信息:无
重复:否];
将此行置于“viewDidLoad”方法
及
-(无效)目标方法{
NSDateFormatter*格式化程序=[[NSDateFormatter alloc]init];
[格式化程序setDateFormat:@“EEE HH mm”];
NSDate*dt=[NSDate日期];
NSString*dayAString=[formatter stringFromDate:dt];
NSArray*数组=[dayAString组件由字符串分隔:@”“];

如果([[array objectAtIndex:0]IseQualtString:@“Friday”]&&[[array objectAtIndex:1]intValue]>=4&&[[array objectAtIndex:1]intValue]=0&&[[array objectAtIndex:2]intValue]请在创建标签的位置显示您的现有代码请参见编辑,谢谢。请在创建标签的位置显示您的现有代码请参见编辑,谢谢。感谢您的回答,但是我收到了一些错误…1)没有可见的@interface for'NSArray'声明选择器'obejectAtIndex:'2)使用未声明的标识符“string”我已设法纠正错误,但是当运行self.scrollingLabel.text=@“这不是测试”
从未被调用?它将在day=Friday,hour=4到6,minute=0到59时调用。将系统日期frieday设置为4到6之间的时间感谢您的回复,我已将系统时间设置为1559,但在1600时它仍然没有被调用。您能将字符串DayaString值设置为吗?谢谢您的回复,但是我遇到了一些错误。。.1)“NSArray”没有可见的@interface声明选择器“obejectAtIndex:”2)使用未声明的标识符“string”我已设法纠正错误,但是当运行
self.scrollingLabel.text=@“这不是测试”
从未被调用?当day=Friday,hour=4到6,minute=0到59时,它将被调用。将系统日期frieday设置为4到6之间的时间感谢回复,我已将系统时间设置为1559,但在1600时,它仍然不会被调用。您能将字符串DayaString值设置为吗?