過去5日間、QML Webビューオブジェクトのクリックを「オン」にするために多くの「解決策」を試してきましたが、どのページのどのリンクもクリックできないようです。
私はペイパルのチェックアウトページを埋め込んでいます、そしておそらくそれは私が逃した非常に単純なものです。Webビューのみで、幅+高さ+ javascripts(およびjsなし)以外のオプションがまったくない空のページを試しました。以下のコード(および他の多くのもの)を試しましたが、クリックはありませんでした。IRCに質問してみたところ、「最も基本的なWebビューの設定でも、常にクリックできるはずです」という応答が返されました。以下のコードで、URLを実際のap-keyを含むものからdevログインページだけに変更しましたが、paypalのgoogle.comまたは他のサイトに関係なく、問題は同じです。
どうか、私が何かをクリックする方法を知っている人はいますか?フォームをクリックすることも、キーボードをポップアップしてフォームに入力することも、クリックすることもできません。
MeegoプラットフォームでQML+PySideを実行しています。以下のページ/長方形をmain.qmlからLoaderオブジェクトにロードします。
どんな助けでも大歓迎です。
注:qt-developerネットワークで同じ質問をしましたが、まだ応答がありません。ここで試してみると、このフォーラムはより多くの人が住んでいるので、この問題についての経験を持つ誰かが読んでくれることを願っています(これらの問題を抱えているのは私だけではないことに気づきました)。
import QtQuick 1.1
import QtWebKit 1.1
import com.nokia.meego 1.1
Rectangle {
Image {
id: background
source: "./images/bg.png"
anchors.fill: parent
Text {
id: logo
text: "My Fancy Logo"
x: 2
y: 2
font.pixelSize: 24
font.bold: true
font.italic: true
color: "white"
style: Text.Raised
styleColor: "black"
smooth: true
}
Rectangle {
id: rect
x: 0
y: 60
width: background.width
height: background.height - 70
Flickable {
id: flickable
width: parent.width
height: parent.height
contentWidth: Math.max(parent.width,webView.width)
contentHeight: Math.max(parent.height,webView.height)
flickableDirection: Flickable.HorizontalAndVerticalFlick
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.left: parent.left
anchors.right: parent.right
boundsBehavior: Flickable.DragOverBounds
clip:true
pressDelay: 200
WebView {
id: webView
settings.javascriptEnabled: true
settings.pluginsEnabled: true
url: "https://developer.paypal.com/"
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.left: parent.left
anchors.right: parent.right
transformOrigin: Item.Top
smooth: false
focus: true
preferredWidth: flickable.width
preferredHeight: flickable.height
PinchArea {
id: pinchArea
property real minScale: 1.0
anchors.fill: parent
property real lastScale: 1.0
pinch.target: webView
pinch.minimumScale: minScale
pinch.maximumScale: 3.0
onPinchFinished: {
flickable.returnToBounds();
flickable.contentWidth = (flickable.width + flickable.width) * webView.scale;
flickable.contentHeight = (flickable.height + flickable.height) * webView.scale;
}
}
}
}
}
}
}