Swift 版本 2 布尔
Swift Version 2 Bool
我在 Swift2 中创建应用程序时遇到问题。
该应用程序有一张狼的图像,每 0.4 秒更改一次以显示 运行 只狼。
但是我在 Swift 2 中有 Bool 错误,我无法修复。
我也有声明 void 函数的问题。
任何帮助,将不胜感激。
@IBAction func startRunnng(sender: UIButton)
{
tmrRun = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "update", userInfo: nil, repeats: true)
btnGo.userInteractionEnabled = NO;
btnStop.userInteractionEnabled = YES;
sliSpeed.userInteractionEnabled = NO;
}
@IBAction func stopRunnng(sender: UIButton)
{
tmrRun invalidate()
btnGo.userInteractionEnabled = YES;
btnStop.userInteractionEnabled = NO;
sliSpeed.userInteractionEnabled = YES;
}
void takeaBound
{
String *imageName = [NSString stringWithFormat:@"wolf%d.png", pic];self.imvWolf.image = [UIImage imageNamed:imageName];
pic += 1;
if (pic == 8)
pic = 0;
}
override func viewDidLoad() {
super.viewDidLoad()
pic = 0;
// Do any additional setup after loading the view, typically from a nib.
}
Swift中的布尔值是true
和false
,YES
和NO
在Objective C中使用。
所以在你的 stopRunning
方法中,你应该写:
@IBAction func stopRunnng(sender: UIButton)
{
tmrRun invalidate()
btnGo.userInteractionEnabled = true
btnStop.userInteractionEnabled = false
sliSpeed.userInteractionEnabled = true
}
(旁注,您也不需要 Swift 中的 ;
)
关于 void 函数。在 Swift 中,您在方法声明之后编写 return 类型,以 ->
开头。像这样:
func takeABound(parametersWouldGoHere) -> ()
对于 void 方法,您可以编写 ()
或 Void
,或者像您经常做的那样,根本不写任何东西。
func takeABound(parametersWouldGoHere)
正如 "The Swift Programming Language" 在关于 functions
的章节中所说
Because it does not need to return a value, the function’s definition does not include the return arrow (->) or a return type.
您可以在 "The Swift Programming Language" 中阅读有关函数、布尔值等的更多信息,其中有一章名为 "A Swift Tour" 的精彩章节将向您介绍许多基本知识。
希望对您有所帮助
我在 Swift2 中创建应用程序时遇到问题。
该应用程序有一张狼的图像,每 0.4 秒更改一次以显示 运行 只狼。
但是我在 Swift 2 中有 Bool 错误,我无法修复。
我也有声明 void 函数的问题。
任何帮助,将不胜感激。
@IBAction func startRunnng(sender: UIButton)
{
tmrRun = NSTimer.scheduledTimerWithTimeInterval(0.4, target: self, selector: "update", userInfo: nil, repeats: true)
btnGo.userInteractionEnabled = NO;
btnStop.userInteractionEnabled = YES;
sliSpeed.userInteractionEnabled = NO;
}
@IBAction func stopRunnng(sender: UIButton)
{
tmrRun invalidate()
btnGo.userInteractionEnabled = YES;
btnStop.userInteractionEnabled = NO;
sliSpeed.userInteractionEnabled = YES;
}
void takeaBound
{
String *imageName = [NSString stringWithFormat:@"wolf%d.png", pic];self.imvWolf.image = [UIImage imageNamed:imageName];
pic += 1;
if (pic == 8)
pic = 0;
}
override func viewDidLoad() {
super.viewDidLoad()
pic = 0;
// Do any additional setup after loading the view, typically from a nib.
}
Swift中的布尔值是true
和false
,YES
和NO
在Objective C中使用。
所以在你的 stopRunning
方法中,你应该写:
@IBAction func stopRunnng(sender: UIButton)
{
tmrRun invalidate()
btnGo.userInteractionEnabled = true
btnStop.userInteractionEnabled = false
sliSpeed.userInteractionEnabled = true
}
(旁注,您也不需要 Swift 中的 ;
)
关于 void 函数。在 Swift 中,您在方法声明之后编写 return 类型,以 ->
开头。像这样:
func takeABound(parametersWouldGoHere) -> ()
对于 void 方法,您可以编写 ()
或 Void
,或者像您经常做的那样,根本不写任何东西。
func takeABound(parametersWouldGoHere)
正如 "The Swift Programming Language" 在关于 functions
的章节中所说Because it does not need to return a value, the function’s definition does not include the return arrow (->) or a return type.
您可以在 "The Swift Programming Language" 中阅读有关函数、布尔值等的更多信息,其中有一章名为 "A Swift Tour" 的精彩章节将向您介绍许多基本知识。
希望对您有所帮助