我目前正在尝试在我的应用程序中显示路线,但我收到 [UserSession] 映射请求的短会话,但在控制台中未启用会话共享。我将 MapView 和路线计算分离在不同的结构/类中,所以这可能就是原因。我从未听说过 UserSession
[UserSession] maps short session requested but session sharing is not enabled
Run Code Online (Sandbox Code Playgroud)
我在网上看到有人说这是 iOS 15 / Xcode 中的一个错误,但我还没有找到任何解决方案或解释这个错误的含义。
按下 UIViewController 中的按钮时如何显示听写。
我看到这是在 Apple Store 应用程序的搜索字段中选择麦克风时完成的。但我不确定如何在 Swift 中复制同样的操作。
下图显示了我想要完成的任务:
我似乎无法弄清楚为什么约束锚不起作用
inputsContainerView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
inputsContainerView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
inputsContainerView.widthAnchor.constraint(equalTo: view.widthAnchor, constant: -24).isActive = true
inputsContainerView.heightAnchor.constraint(equalTo: view.heightAnchor, constant: 150).isActive = true
Run Code Online (Sandbox Code Playgroud)
我试过到处寻找,但似乎找不到问题所在。
我没有看到任何冲突的约束或警告,基本上我需要容器看起来像一个位于屏幕中心的白色矩形。
let inputsContainerView = UIView()
inputsContainerView.backgroundColor = UIColor.white
inputsContainerView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(inputsContainerView )
Run Code Online (Sandbox Code Playgroud)
这是它的样子:

它应该是这样的:

如何使用以下扩展从字符串中过滤表情符号?
extension String {
func removeCharacters() -> String {
let removeCharacters: CharacterSet = [" ", ";", ",", ":", ".", "!", "%", "$", "&", "#", "*", "^", "@", "(", ")", "/"]
let filteredString = self.unicodeScalars.filter { !removeCharacters.contains($0) }
return String(String.UnicodeScalarView(filteredString))
}
}
Run Code Online (Sandbox Code Playgroud)
我知道isEmojiPresentation == false可以使用属性,只是不确定如何将其添加到函数中。为了澄清,所有表情符号都应该从通过扩展传递的字符串中删除。