Qt for android app实例
时间: 2024-04-21 07:05:03 浏览: 126
Qt on Android 示例程序
5星 · 资源好评率100%
以下是一个简单的 Qt for Android 应用程序示例,该应用程序显示一个标签和一个按钮,当用户单击按钮时,标签的文本将更改。
main.cpp
```c++
#include <QtWidgets/QApplication>
#include <QtWidgets/QLabel>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QVBoxLayout>
#include <QtAndroidExtras/QAndroidJniObject>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建标签和按钮
QLabel label("Hello, Android!");
QPushButton button("Click me!");
// 当按钮被单击时,调用 Java 方法
QObject::connect(&button, &QPushButton::clicked, [](){
QAndroidJniObject::callStaticMethod<void>("org/qtproject/example/MainActivity", "showToast", "(Ljava/lang/String;)V", QAndroidJniObject::fromString("Button clicked!").object<jstring>());
});
// 创建垂直布局
QVBoxLayout layout;
layout.addWidget(&label);
layout.addWidget(&button);
// 创建主窗口并设置布局
QWidget widget;
widget.setLayout(&layout);
widget.show();
return app.exec();
}
```
MainActivity.java
```java
package org.qtproject.example;
import android.widget.Toast;
import org.qtproject.qt5.android.bindings.QtActivity;
public class MainActivity extends QtActivity
{
public static void showToast(String message)
{
Toast.makeText(getActivity(), message, Toast.LENGTH_SHORT).show();
}
}
```
注意:这个示例假定你已经正确设置了 Qt for Android 开发环境。
阅读全文