![](/img/trans.png)
[英]How to turn on and off Predictive text option of keyboard Programmatically
[英]How to turn off predictive text in QLineEdit on Android?
我正在嘗試使用 Qt 5.12 為 android 和 linux 構建一個應用程序。 每次輸入字符時都需要在QLineEdit
中讀取當前文本。在 Android 6 設備上,當前文本部分在鍵入時顯示帶下划線,並顯示預測器。 我只在每個Space
或Return
上收到信號QLineEdit::textChanged
。 信號QLineEdit::textEdited
QLineEdit::cursorPositionChanged
的行為相同。 禁用QCompleter
和QValidator
沒有幫助。
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->lineEdit->setCompleter(nullptr);
ui->lineEdit->setValidator(nullptr);
}
void MainWindow::on_lineEdit_textChanged(const QString &arg1)
{
//just for demonstration
ui->listWidget->addItem(arg1);
}
Qt 5.12.6 Android 6.0.1/Android 7.1.1 谷歌鍵盤
非常感謝您的回復!
對於那些有興趣或面臨同樣問題的人: QLinedit::setInputMethodHints()
是正確的選擇。
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->lineEdit->setInputMethodHints(Qt::ImhNoPredictiveText|Qt::ImhNoAutoUppercase|Qt::ImhNoEditMenu);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.