BEGINNER ALERT!请跟我说说我是一个5岁的孩子,因为我是这个平台和语言的新手。我将感激不畏。
我的Xcode项目中有以下代码,可以通过应用主页上的按钮在本机浏览器中打开网站:
b
在线:
@IBAction func faceURL(_ sender: Any) {
NSURL *spotiURL = [NSURL URLWithString:@"https://www.facebook.com"];
[[UIApplication sharedApplication] openURL:faceURL options:@{} completionHandler:^(BOOL success) {
if (success){
NSLog(@"Opened url");
}
}];
}
它引发了以下错误:
预期","分隔符一行上的连续语句必须用";"
分隔
建议在网址前面的冒号和NSURL *spotiURL = [NSURL URLWithString:@"https://www.facebook.com"];
符号之间加;
。我知道有些新的Xcode和Swift格式已被弃用,但我找不到这个特定问题的简单答案。提前感谢您的智慧。
更新
感谢那些帮助过这个的人们。如果其他人遇到此问题,这里的代码最终会触摸按钮并在本机浏览器中打开一个URL:
@
我还必须删除ViewController中的原始按钮和相应的引用,替换按钮,并与ViewController建立新的连接以使其正常工作。非常感谢!
答案 0 :(得分:0)
首先: faceURL
openURL
spotiURL
应该是let spotiURL = URL(string: "https://www.facebook.com")
UIApplication.shared.openURL(spotiURL!)
。
第二:您的意思是将您从SO中复制的代码从Obj-C转换为Swift,我会为您做的:)
{{1}}
答案 1 :(得分:0)
嗯,你正在混合Swift(第一行)和ObjC(所有其他的)语法,所以你必须先选择其中一个。你的"混合"代码看起来不错。
答案 2 :(得分:0)
看起来你正试图在Swift方法中使用Objective C代码。如果您的项目是用Swift编写的,那么这可能是(可能)您需要的代码:
classdef ::= [decorators] "class" classname [inheritance] ":" suite
inheritance ::= "(" [argument_list] ")"
classname ::= identifier
我建议您通过一些教程来学习iOS开发的基础知识。