标签BlackBerry 10中的链接

时间:2013-02-04 08:39:57

标签: qml blackberry-10

我使用JSON接收数据并将其放入List。有一个标签显示我从JSON收到的文本。在某些情况下,文本中有一个链接。默认情况下,您无法单击标签上的链接。有没有办法让Link可以点击?

Label {
       text:  "Click here to open browser and get redirected to www.stackoverflow.com";
       }

输出为“单击此处打开浏览器并重定向到www.stackoverflow.com”,但无法点击链接到StackOverflow。

3 个答案:

答案 0 :(得分:2)

使用TextArea而不是Label并将属性editable设置为false,它看起来与Label相同。 不要忘记将inputMode设置为Text或Chat。

TextArea {
        text: "http://www.google.com"
        editable: false
        inputMode: TextAreaInputMode.Text
}

答案 1 :(得分:2)

根据Text Styles documentation,您实际上可以在标签本身中使用HTML来将文本设置为链接样式。如果您要应用任何自己的样式,您需要注意一些怪癖,如Blackberry Developer支持论坛here中所述。下面的示例应该可以使用默认样式,该样式将链接为蓝色,使用粗体和下划线:

Label {
    text: "<html>Click here to open browser and get redirected to <a href='http://www.stackoverflow.com'>www.stackoverflow.com</a></html>"
}

注意:您可能需要在multiline: true上设置Label,以便查看所有文字,具体取决于您的布局。

答案 2 :(得分:1)

您应该将Text.Rich Text值指定给Label的“text Format”属性:

import QtQuick 1.1

Rectangle {
  width: 360
  height: 360
  Text {
    text: "Click <a href=\"http://google.com\">here</a>"
    anchors.centerIn: parent
    textFormat: Text.RichText
    onLinkActivated: {
      Qt.openUrlExternally(link)
    }
  }
}