macOS Swift 应用程序:imkxpc_getApplicationProperty:reply:使用不正确的 属性 值 4 调用,失败
macOS Swift App: imkxpc_getApplicationProperty:reply: called with incorrect property value 4, bailing
我正在使用以下环境编写 macOS Swift 应用程序:
- XCode 12 and/or JetBrains AppCode 2020.2
- Swift 5
- macOS 10.15.7 卡特琳娜
Swift 应用的主要视图代码如下 UI;
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
Button(action: {
}) {
Text("Download")
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
应用程序编译和 运行 正常,没有错误或警告。但是,当应用程序window失去焦点(例如,单击桌面或其他应用程序window)或失去焦点后获得焦点时,控制台会显示以下错误:
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] imkxpc_getApplicationProperty:reply: called with incorrect property value 4, bailing.
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] Text input context does not respond to _valueForTIProperty:
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] imkxpc_getApplicationProperty:reply: called with incorrect property value 4, bailing.
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] Text input context does not respond to _valueForTIProperty:
但是,当按钮从视图中移除时,即:
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
控制台未显示任何错误。如果使用其他控件(例如 TextField),也会出现错误消息。
我是 Swift 和 macOS 应用程序开发的新手,所以我想知道我的代码是否有问题?
如何使用 Buttons 和 TextFields 正确编写代码而不导致错误显示在控制台上?
谢谢。
此问题与 Swift 代码完全无关。
我在 macOS 上使用日文输入源编写 Swift 应用程序,因为我的键盘布局是日文,因此当应用程序 window get/lost 获得焦点时,错误消息显示在 Terminal/console 上。
将输入源更改为 English - ABC
即可解决问题。
您可以从 macOS System Preferences - Keyboard
更改输入源。从 Input Sources
选项卡将输入源添加或更改为 English - ABC
。
PS:当 ElectronJS 应用 运行 来自终端时,错误消息也会显示在终端上。更改输入源也可以解决问题。我想知道这是否是 non-English macOS 输入源的错误?
我正在使用以下环境编写 macOS Swift 应用程序:
- XCode 12 and/or JetBrains AppCode 2020.2
- Swift 5
- macOS 10.15.7 卡特琳娜
Swift 应用的主要视图代码如下 UI;
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
Button(action: {
}) {
Text("Download")
}
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
应用程序编译和 运行 正常,没有错误或警告。但是,当应用程序window失去焦点(例如,单击桌面或其他应用程序window)或失去焦点后获得焦点时,控制台会显示以下错误:
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] imkxpc_getApplicationProperty:reply: called with incorrect property value 4, bailing.
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] Text input context does not respond to _valueForTIProperty:
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] imkxpc_getApplicationProperty:reply: called with incorrect property value 4, bailing.
2020-10-17 07:24:02.939 HelloAppCode[11611:207556] Text input context does not respond to _valueForTIProperty:
但是,当按钮从视图中移除时,即:
import SwiftUI
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
}
.frame(maxWidth: .infinity, maxHeight: .infinity)
}
}
控制台未显示任何错误。如果使用其他控件(例如 TextField),也会出现错误消息。
我是 Swift 和 macOS 应用程序开发的新手,所以我想知道我的代码是否有问题? 如何使用 Buttons 和 TextFields 正确编写代码而不导致错误显示在控制台上?
谢谢。
此问题与 Swift 代码完全无关。 我在 macOS 上使用日文输入源编写 Swift 应用程序,因为我的键盘布局是日文,因此当应用程序 window get/lost 获得焦点时,错误消息显示在 Terminal/console 上。
将输入源更改为 English - ABC
即可解决问题。
您可以从 macOS System Preferences - Keyboard
更改输入源。从 Input Sources
选项卡将输入源添加或更改为 English - ABC
。
PS:当 ElectronJS 应用 运行 来自终端时,错误消息也会显示在终端上。更改输入源也可以解决问题。我想知道这是否是 non-English macOS 输入源的错误?