0

我正在尝试使用TextArea控件构建一个带有一些可编辑文本的基本页面。在桌面(Windows)下一切正常,但 Android 存在一些问题。

Q5.6/windows mingw。android-23 构建,最低 API 16/目标 23 (Android 6.0)

问题是:

  1. 如果我将其子类化,TextAreaStyle它会破坏 Android。选择句柄消失(在其他怪异中)。

  2. 使用富文本,链接不可点击,即使是onLinkActivated. 他们在桌面上工作正常。滚动一点后,链接下划线也会消失。

  3. Android 上没有剪切和粘贴弹出窗口。我已经看到这个作为 QT 错误发布了。在这方面有任何进展,或解决方法。我已经看到了 Qt5.4 的解决方法,但这不适用于 5.6。

main.qml:

import QtQuick 2.5
import QtQuick.Controls 1.4
import QtQuick.Controls.Styles 1.4
import QtQml 2.2

ApplicationWindow {
    visible: true
    width: 640
    height: 800

    function makeText() {
        var s = "click <a href=\"http://qt.io\">here</a>\n"
        for (var i = 0; i < 10; ++i)
        {
            s += 
"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras at tempus felis. Nulla facilisi. Duis quam purus, posuere eu rutrum vel, blandit quis lorem. Cras vitae orci eget lorem luctus cursus quis nec nibh. Sed luctus ligula urna, vel commodo nisi finibus quis. Donec pretium eu purus a porttitor. Nam vehicula nunc quis dui gravida luctus. Morbi fermentum, elit nec ullamcorper accumsan, ex ligula iaculis nisi, id pretium ipsum metus quis quam. In lobortis dignissim semper. Aenean at neque lorem. Maecenas dapibus, arcu a condimentum consequat, mauris enim vehicula nibh, in fringilla quam nisi eu ipsum.</p>"
        }
        return s
    }

    TextArea {
        id: textarea
        anchors.fill: parent

        // putting this in breaks selection handles in android, why?
        // no putting it in makes desktop look bad.
        //TextAreaStyle { renderType: Text.QtRendering }

        font.pointSize: 16
        textMargin: 16
        textFormat: TextEdit.RichText

        frameVisible: false
        flickableItem.flickableDirection: Flickable.VerticalFlick

        text: Qt.platform.os + "\n" + makeText()

        // works desktop, fails android, why?
        onLinkActivated: Qt.openUrlExternally(link)

        // there is no cut & paste menu either? 
    }
}

我正在与所有这些问题作斗争,只是为了得到一个简单的文本页面。

要点代码,https://gist.github.com/anonymous/e5a9e9751e10db22695e2643e8191292

感谢您的任何帮助和建议。

4

0 回答 0