Я создал минимальный рабочий пример окна ввода, который я хотел бы разработать, используя QGraphicsItem. Вот код (я фигура .h не обязательно):Как заставить клавиатуру Android появляться при использовании Qt для Android?
TestEditor::TestEditor()
{
text = "";
boundingBox = QRectF(0,0,200,100);
}
QRectF TestEditor::boundingRect() const{
return boundingBox;
}
void TestEditor::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget){
painter->setBrush(QBrush(Qt::gray));
painter->drawRect(boundingBox);
painter->setBrush(QBrush(Qt::black));
painter->drawText(boundingBox,text);
}
void TestEditor::keyReleaseEvent(QKeyEvent *event){
qDebug() << "Aca toy";
text = text + event->text();
update();
}
Мой тестер приложение просто добавить его в графике просмотра, чтобы проверить:
TestEditor *editor = new TestEditor();
editor->setText("Algo de texto como para empezar");
editor->setFlag(QGraphicsItem::ItemAcceptsInputMethod,true);
editor->setFlag(QGraphicsItem::ItemIsFocusable,true);
editor->setFlag(QGraphicsItem::ItemIsSelectable,true);
ui->gvScreen->scene()->addItem(editor);
Когда я проверить это на моем ПК он отлично работает. Когда я скомпилирую его для android, я получаю проблему, что клавиатура не появляется, поэтому я не могу ее пробовать. Как заставить клавиатуру появиться?