android - 在您输入空格之前,TextArea 不会接收文本
问题描述
Qt 5.12.3 / QtQuick 2.12 / QtQuick.Controls 2.12
Android 上的 Qml 组件 TextArea 行为(带有 MIUI 的 Android 8)。当我在 TextArea 中输入文本时,TextArea qml 在输入空格之前不会收到带有输入文本的 onTextChanged 事件。是否可以修复或解决方法?
TextArea {
onTextChanged: console.log("onTextChanged:", text)
}
控制台有这些消息:
W MyApp: {default} [W] [28.08.19 17:38:54.738] Input method out of sync "" 12
对于 Qt 5.13.0 / QtQuick 2.13 / QtQuick.Controls 2.13,行为是相同的
解决方案
这对我有用:
TextArea {
inputMethodHints: Qt.ImhSensitiveData
onTextChanged: {
console.log("onTextChanged:", text)
}
}
// with preText in keyboard
TextArea {
onTextChanged: {
deselect()
console.log("onTextChanged:", text)
}
}
使用 clear() 删除显示中的文本。
推荐阅读
- html - 使用 Bootstrap 4 将嵌套列的响应定位从垂直更改为水平
- html - 从 CSS 调整 SVG 的大小和颜色
- python - 如何在使用 np.r_ 时修复内存错误
- c# - 如何根据json的结构选择在运行时反序列化的类型?
- function - 从函数返回函数以及为什么省略括号?
- python-3.x - os.walk 帮助 - 分块处理数据 - python3
- c - 为什么 fwrite 会多次写入每个字符?
- python - 如何从 numpy.ndarray 编写 csv?
- csv - CSV 数据无法在 IE 中加载,但使用 D3 在我的 SharePoint 网站中的 Chrome、Firefox 和 Edge 中加载
- core-data - 如何在 SwiftUI 中使用 CoreData 更改数据值?