当前位置: 首页 > 面试题库 >

如何使用openURL在Swift中打个电话?

薄烨
2023-03-14
问题内容

我已经将拨打电话的代码从Objective-C转换为Swift,但是在Objective-
C中,我们可以像这样设置我们想要打开的URL的类型(例如电话,SMS,Web):

@"tel:xx"
@"mailto:info@example.es"
@"http://stackoverflow.com"
@"sms:768number"

Swift中的代码是:

UIApplication.sharedApplication().openURL(NSURL(string : "9809088798")

我读到尚未为释放任何scheme参数tel:,但我不知道Swift是否可以检测该字符串是否用于拨打电话,发送电子邮件或打开网站。或者我可以写:

(string : "tel//:9809088798")


问题答案:

我很确定您想要:

UIApplication.sharedApplication().openURL(NSURL(string: "tel://9809088798")!)

(请注意,在问题文本中,您放置了tel//:,而不是tel://)。

NSURL的字符串init要求使用格式正确的URL。它不会将一堆数字变成一个电话号码。有时您会在UIWebView中看到电话号码检测,但这是在比NSURL更高的级别上完成的。

编辑:添加!每个评论如下



 类似资料:
  • stack_trace=java.lang.unsatistifiedLinkError:dalvik.system.pathClassLoader[dexpathlist[[zip文件“/data/app/com.iw.infowave-1/base.apk”],nativelibrarydirectories=[/vendor/lib64,/system/lib64]]]在java.lang.

  • 问题内容: 我想在我的Swift应用程序中绘制折线。 SWIFT代码 错误: 我找不到解决方案。 问题答案: 首先 ,必须创建一个。 自iOS 7起已弃用,尽管您仍可以在Objective-C中使用它,但在Swift中不支持它。 其次 ,您必须在委托方法中创建并返回一个(不要将其传递给)。 在方法中,传递对象(而不是or )。 以解释传递给哪个对象与返回的对象之间的区别。) 因此,在该方法中,删除

  • 问题内容: 有没有人设法使此功能在Swift中工作? 苹果文档:https : //developer.apple.com/library/prerelease/mac/documentation/Carbon/Reference/QuartzEventServicesRef/index.html#//apple_ref/c/func/CGEventTapCreate 以下是CGEventTapC

  • 问题内容: 在Objective-C中,我们使用以下代码为视图设置RGB颜色代码: 如何在Swift中使用它? 问题答案: 这是该函数的Swift版本(用于获取值的UIColor表示形式):

  • 问题内容: 有人能帮我吗?我找不到完整的语法示例。 问题答案: 不清楚您要问 的 是什么 ,但我注意到您在代码中有几个错误: 您应该创建使用 返回,因此无需将其包装在内部(也称为实例化新对象)。 完成处理程序是一个闭包,下面是创建该特定闭包的方法: } 这是更新的代码:

  • 问题内容: 我正在尝试将此代码段转换为Swift。由于某些困难,我正在努力下车。 我遇到的第一个也是主要的问题是如何定义和使用C结构。我认为,在上述代码的第一行()中,我认为他们正在定义从struct sockaddr_in(?)调用的实例。我试图声明这样的。 但是我 在调用中 得到了 参数’sin_len’ 的错误 Missing参数 错误 , 这是可以理解的,因为该结构需要多个参数。所以我再次