我想TextField在 SwiftUI 中关闭 a 的预测文本/自动更正。看起来这是可能的UITextField:
禁用 UITextField 预测文本
我检查了 Apple 文档TextField并用谷歌搜索,但找不到任何关于此的信息。
有没有人找到一种方法来禁用 TextField 的预测文本/自动完成?
谢谢!
我试图制作一个 SwiftUI 应用程序,在其中输入一个字母后TextField,光标会自动移动到下一个TextField. 用户界面非常像这样。
在 Swift/IB 中,看起来这是通过委托完成的,并在这篇文章中添加了一个目标: 如何在 Swift 中自动移动到下一个 UITextField
但是找不到任何在 SwiftUI 中使用委托/目标的文档。
我尝试关注这篇文章:
SwiftUI TextField max length
但这对我不起作用。设置.prefix(1)似乎没有什么区别。在TextField仍然接受任何字符数量,当移动到下一个TextField不降低进入到只有第一个字符的字符。
在SwiftUI的当前状态下,是否可以TextField在输入1个字符后自动移动到下一个?
谢谢你的帮助!
我在调用该函数时遇到了播放音频文件的问题。
我正在使用 AVAudioPlayer 尝试按照此处的说明播放文件:https : //www.hackingwithswift.com/example-code/media/how-to-play-sounds-using-avaudioplayer 按下按钮后视图,它调用 func 来播放声音,但据我所知,没有播放任何内容。没有抛出错误,并且找到了文件。当按下按钮时,该应用程序还使用语音合成器,播放效果很好。
我环顾了堆栈溢出并按照此处的说明进行操作: 在 SwiftUI 应用程序中放置音频播放代码的位置
但是当按下按钮时仍然没有播放音频。
这是函数:
func playSound() {
var sound = AVAudioPlayer()
if let path = Bundle.main.path(forResource: "TryAgain", ofType: "wav") {
do {
sound = try AVAudioPlayer(contentsOf: URL(fileURLWithPath: path))
print("Playing sound")
sound.play()
} catch {
print( "Could not find file")
}
}
Run Code Online (Sandbox Code Playgroud)
这是课程:
class Player: BindableObject {
let willChange = PassthroughSubject<Player, Never>()
var isPlaying: Bool = false {
willSet {
willChange.send(self)
}
}
func playSound() {
var sound = …Run Code Online (Sandbox Code Playgroud)