2013-07-07 51 views
-2

我想要一个滑块和一个视频(假设10秒中的一个),并且当滑块位于0时,应将imageView设置为视频的第一个图像。当滑块为0.3时,imageView应显示以(3/10)*显示的图像长度(此例中为3秒)。当滑块为1时,imageView应该显示在视频结尾处显示的图像。因此,您可以使用滑块快速播放或慢速播放视频。让视频播放使用滑块

有人能告诉我在特定的秒钟获取视频图像的代码吗?

我不想从那秒开始播放它,只是得到通常应该在那秒显示的图像。

在此先感谢!

+7

你是否在这两种情况下使用'=='而不是'='? – Ryan

+1

你确定要''而不是'=='吗? –

+4

你也错过了一些':'。请显示您的真实代码。 –

回答

2

您会收到错误消息,因为在解析[[NSUserDefaults standardUserDefaults] integerForKey @"myScoreLevel1"]时,编译器将获取“integerForKey”,并在此之后看到字符串字面值。这绝不是合法的语法。但[[NSUserDefaults standardUserDefaults] integerForKey]将是合法的语法,所以编译器抱怨缺少]

当然,真正的问题是在“integerForKey”之后丢失了:,但编译器不够聪明。

(和使用=代替==是另一个问题,但不是一个编译器已经认识呢。代替==使用=是太常见的错误,这是一个你可以不依赖于课程编译器总是标记,如果它通过编译,你的程序可能会奇怪地行为非常)。

+0

谢谢!使命为苹果:使编译器更聪明。 – MatisDS

-1

更改为

如果([[NSUserDefaults的standardUserDefaults] integerForKey:@ “myScoreLevel1”] == 0){ [self.button1Outlet了setBackgroundImage:[UIImage的imageNamed:@ “chooselevelWithoutStars.png”] forState:UIControlStateNormal ]。

}否则如果([[NSUserDefaults的standardUserDefaults] integerForKey:@ “myScoreLevel1”] == 1){ [self.button1Outlet了setBackgroundImage:[UIImage的imageNamed:@ “chooseLevel1Star.png”] forState:UIControlStateNormal]; }其他{

}

+0

不,你有太多的括号它是[UIImage而不是[[UIImage – MatisDS

1

它应该是:

if ([[NSUserDefaults standardUserDefaults] integerForKey: @"myScoreLevel1"] == 0){ 
    [self.button1Outlet setBackgroundImage:[UIImage imageNamed:@"chooselevelWithoutStars.png"] forState: UIControlStateNormal]; 

} else if ([[NSUserDefaults standardUserDefaults] integerForKey: @"myScoreLevel1"] == 1){ 
    [self.button1Outlet setBackgroundImage:[UIImage imageNamed:@"chooseLevel1Star.png"] forState: UIControlStateNormal]; 
} 

还要注意,else { .. }if elseif语句之后可选。