Qt for Android调用android原生Toast控件
来源:互联网 发布:php cookie自动登录 编辑:程序博客网 时间:2024/06/01 08:24
用Qt开发Android应用,有时候会想着直接调用android原生的一些组件或者打开某些android的系统界面,比如调用Toast显示消息提醒、打开android系统设置页面。这里主要讲解如何通过Qt调用android原生的Toast来显示消息提醒。
首先,如果是一个新创建的Qt工程,需要创建一个AndroidManifest.xml文件,创建过程不再赘述,然后创建一个java的类,继承于
public class MainActivity extends org.qtproject.qt5.android.bindings.QtActivity
调用Toast 需要用到Handler,要不然无法调用
private static Handler mHandler;
接着看代码
private static Handler m_handler = new Handler() { @Override public void handleMessage(Message msg) { switch (msg.what) { case 1: Toast toast = Toast.makeText(m_instance,(String)msg.obj, Toast.LENGTH_SHORT); toast.show(); break; }; } };
然后定义一个静态函数 供Qt调用
public static void makeToast(String s){ m_handler.sendMessage(m_handler.obtainMessage(1, s)); }
OK,这时候Qt就可以通过makeToast函数来调用Toast控件显示相应的消息了,调用方式如下:
QAndroidJniObject javaToast = QAndroidJniObject::fromString(text);QAndroidJniObject::callStaticMethod<void>("com/lyy/test/MainActivity", "makeToast", "(Ljava/lang/String;)V", javaToast.object<jstring>());
其中 text就是要显示的内容,com/lyy/test/MainActivity是java类的包路径。
0 0
- Qt for Android调用android原生Toast控件
- Qt for Android调用android原生控件安装apk
- Qt for Android 调用android原生接口分享图片或文字
- Qt for Android调用原生接口打开相机拍照并存储照片
- android Toast控件使用
- Android中的Toast控件
- 【Android】Toast控件使用
- Qt for Android 编译安卓原生可执行程序
- android 调用原生相机
- JS调用Android、Ios原生控件_优就业
- Android控件开发之Toast
- Android控件开发之Toast
- Android UI 控件之Toast
- Android Toast 工具类调用
- 基于Qt for Android联想到调用Android API
- Android Studio调用QT for Android生成的.so库
- Android之原生控件列表
- Android原生控件---ActionBar详解
- gmock学习
- linux
- linux find grep组合使用
- 土地问题(求出土地被分成多少面,有知识点)
- linux下的bluetooth编程之环境构筑
- Qt for Android调用android原生Toast控件
- Elasticsearch安装后x-pack插件后使用CRUL
- bzoj 2957 线段树
- 我的科研生活2017-2-21
- linux命令行与shell脚本大全_第五章_使用环境变量
- 怎么查询通话记录信息
- 【leetcode】Next Greater Element I
- SAPUI5 (21)
- springmvc 和 spring 整合的 web.xml 配置(包括监听器,乱码解决等)