Important: Please read the Qt Code of Conduct -

Qt5.7 - MessageDialog fall back to DefaultMessageDialog.qml in case of iOS not working.

  • Hi,

    Recently we have been trying to compile our existing mobile app
    (previously developed and built using Qt 5.5.1) using Qt5.7.

    While doing this, the MessageDialog functionality has stopped working
    , when deploying the app to iOS device.

    According to the MessageDialog documentation provided in :

    " The implementation of MessageDialog will be a platform message dialog
    if possible. If that isn't possible, then it will try to instantiate a
    QMessageBox. If that also isn't possible, then it will fall back to a QML
    implementation, DefaultMessageDialog.qml. In that case you can customize the
    appearance by editing this file. "

    In our iOS deployment we relied upon the fall back to the DefaultMessageDialog.qml
    file, which was available at the location "~/Qt5.5.1/5.5/ios/qml/QtQuick/Dialogs/DefaultMessageDialog.qml"
    in Qt5.5.1 . But now while deploying the app on iOS device using Qt5.7 the MessageDialog doesn't work.
    The reason we feel behind this is the absence of the DefaultMessageDialog.qml at location
    "~/Qt5.7/5.7/ios/qml/QtQuick/Dialogs/" in Qt5.7 installation. In fact, there is no .qml file
    available at the mentioned location. Also, not able to find DefaultMessageDialog.qml
    file anywhere under ~/Qt5.7/5.7/ios/ .

    NOTE: The MessageDialog works fine on the desktop, as the file
    "~/Qt5.7/5.7/clang_64/qml/QtQuick/Dialogs/DefaultMessageDialog.qml" exists.

    Kindly, also suggest if there is some deflection in my understanding, or if i
    am missing some feature in Qt 5.7.

    Would be really grateful for help. Thanks in advance.

Log in to reply