我想DatePickerDialog在我的应用程序中创建一个Android,但当我创建一个时,DatePickerDialog我收到以下消息:Call requires API level 24 (current min is 14): android.app.DatePickerDialog#DatePickerDialog
我如何使用DatePickerDialog旧的API版本?
我正在尝试使用TextField仅接收中的数字的QML。我正在使用该inputMethodHints属性使设备键盘仅显示数字。它在Android上运行良好,但是当我在iOS上运行时,它会显示完整的键盘,包括数字,字符和联想词。
代码如下:
TextField {
id: numeroTelefoneTextField
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
width: parent.width * 0.70
height: parent.height * 0.6
placeholderText: qsTr("Seu número")
font.bold: true
validator: RegExpValidator{regExp: /\d+/}
inputMethodHints: Qt.ImhDigitsOnly
}
Run Code Online (Sandbox Code Playgroud)
我尝试了其他选项来喜欢inputMethodHints: Qt.ImhDigitsOnly | Qt.ImhNoPredictiveText,inputMethodHints: Qt.ImhNoPredictiveText但这些选项在iOS中均不起作用。
在“我的项目”中,有一个框架项目,此框架项目在资产目录中具有图像。
我想在主项目的情节提要中使用这些图像。
通过定义这样的框架捆绑包,我可以在类文件中使用图像,
myImageView.image = UIImage(named: "img1", in: Bundle.init(identifier: "com.abc"), compatibleWith: nil)
Run Code Online (Sandbox Code Playgroud)
但不在情节提要中。所以我可以在情节提要中使用它,还是只需要使用代码?
我正在开发一个移动应用程序来运行iOS,Android并且我在image gallery使用Qml.
我需要在GridView.
我曾尝试使用返回图片文件夹,QStandardPaths但它仅适用于台式计算机。对于运行的智能手机iOS,Android它返回一个不是画廊文件夹的文件夹。
有人可以帮我弄清楚如何做到这一点吗?我的代码如下:
主程序
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QtQml>
#include "caminhoimagens.h"
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
qmlRegisterType<caminhoImagens>("PathImagens", 1, 0, "CaminhoImagens");
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
Run Code Online (Sandbox Code Playgroud)
主文件
import QtQuick 2.4
import QtQuick.Window 2.2
import QtQuick.Controls 1.3
import QtQuick.Dialogs 1.2
import Qt.labs.folderlistmodel 2.1
import PathImagens 1.0
Window {
visible: true
width: 360
height: 640
maximumHeight: 640
minimumHeight: 640 …Run Code Online (Sandbox Code Playgroud) 我正在尝试将QImage传递给QML.有人能帮助我吗?代码如下.
问题是我为图像提供程序提供图像的所有尝试都失败了.我尝试在类中使用Q_PROPERTY和QImage成员,但是当我尝试访问它时,我的提供程序总是返回一个空图像.
如何为提供商提供QImage?
QML
Camera {
id: camera
captureMode: Camera.CaptureStillImage
imageCapture {
onImageCaptured: {
manipulaImagem.imagem = preview;
previewImage.source = manipulaImagem.recortarFotoPerfil(preview, viewfinder.mapRectToSource(Qt.rect(viewfinder.x, viewfinder.y, viewfinder.width, viewfinder.height)));
}
}
}
Image {
id: previewImage
fillMode: Image.PreserveAspectFit
anchors.top: parent.top
width: parent.width
height: parent.width
}
Run Code Online (Sandbox Code Playgroud)
CPP
QImage manipulaImagem::recortarFotoPerfil(const QString &imagem, QRect rectRecorte)
{
QUrl caminhoImagem(imagem);
QQmlEngine *engine = QQmlEngine::contextForObject(this)->engine();
QQmlImageProviderBase *imageProviderBase = engine->imageProvider(caminhoImagem.host());
QQuickImageProvider *imageProvider = static_cast<QQuickImageProvider*>(imageProviderBase);
QSize imageSize;
QString imageId = caminhoImagem.path().remove(0, 1);
QImage imagem1 = imageProvider->requestImage(imageId, &imageSize, imageSize);
imagem1 = imageProvider->requestImage(imageId, &imageSize, imageSize); …Run Code Online (Sandbox Code Playgroud) 我已经完成了一个代码来获取图像Android gallery.我QtAndroid用来在Qt中编写一个等效的java代码.
我已经打开了画廊,选择了图像并收到了路径,但它返回MediaColumn了文件,我需要绝对路径.
如何使用QAndroid在Qt中编写Java等效代码来获取文件的绝对路径?
这是我做的代码:
imagepickerandroid.h
#ifndef IMAGEPICKERANDROID_H
#define IMAGEPICKERANDROID_H
#include <QObject>
#include <QtAndroidExtras>
#include <QDebug>
class imagePickerAndroid : public QObject, public QAndroidActivityResultReceiver
{
Q_OBJECT
public:
imagePickerAndroid();
void buscaImagem();
virtual void handleActivityResult(int receiverRequestCode, int resultCode, const QAndroidJniObject & data);
signals:
void imagemCaminhoSignal(QString);
};
#endif // IMAGEPICKERANDROID_H
Run Code Online (Sandbox Code Playgroud)
imagepickerandroid.cpp
#include "imagepickerandroid.h"
imagePickerAndroid::imagePickerAndroid()
{
}
void imagePickerAndroid::buscaImagem()
{
QAndroidJniObject ACTION_PICK = QAndroidJniObject::fromString("android.intent.action.GET_CONTENT");
QAndroidJniObject intent("android/content/Intent");
if (ACTION_PICK.isValid() && intent.isValid())
{
intent.callObjectMethod("setAction", "(Ljava/lang/String;)Landroid/content/Intent;", ACTION_PICK.object<jstring>());
intent.callObjectMethod("setType", "(Ljava/lang/String;)Landroid/content/Intent;", QAndroidJniObject::fromString("image/*").object<jstring>()); …Run Code Online (Sandbox Code Playgroud)