我正在Qt和C
++中开发一个Android应用程序。我的整个应用程序都是纵向的,但是当我播放视频时,我想将方向更改为横向,并且在视频结束后应该再次更改为纵向。
因此,问题是如何在Android的Qt / C ++应用程序中将屏幕设置为横向或纵向模式。
可以使用setRequestedOrientation
Java函数更改Android上的屏幕方向,因此您应该从应用中调用Java函数。要在Qt
Android应用程序中运行Java代码,您应该使用Qt Android
Extras
模块,该模块包含用于在Android上进行开发的其他功能。
您可以使用JNI从C / C 调用Java函数或从Java回调C / C 函数。
在这里,您可以在静态Java方法中使用它,例如:
package com.MyApp;
public class OrientationChanger
{
public static int change(int n)
{
switch(n)
{
case 0:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
break;
case 1:
setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
break;
}
}
}
首先,您需要将此添加到您的.pro文件中:
QT += androidextras
并包括相关的头文件:
#include <QAndroidJniObject>
然后,您可以从C ++代码中调用此静态Java函数。
要将方向更改为横向模式:
bool retVal = QAndroidJniObject::callStaticMethod<jint>
("com/MyApp/OrientationChanger" // class name
, "change" // method name
, "(I)I" // signature
, 0);
要将方向更改为纵向模式:
bool retVal = QAndroidJniObject::callStaticMethod<jint>
("com/MyApp/OrientationChanger" // class name
, "change" // method name
, "(I)I" // signature
, 1);
我有一个从LibreOffice Writer导出的PDF文件。这里有一个例子。一些页面具有纵向,其他页面具有横向。我正在使用Linux,当我在evice或Foxit Reader中查看文件时,它会正确显示,即所有文本行都是水平的。它也可以在我的打印机上用A4纸正确打印:横向页面逆时针旋转90度,使文本行垂直。 问题是:文档将在另一台设备(出版商中)上打印,我被告知所有页面都必须具有纵向方向。我不
Adobe Illustrator 通常使用所选打印机的 PPD 文件定义的默认页面大小。但可以把介质尺寸改为 PPD 文件中所列的任一尺寸,并且可指定纵向(垂直)还是横向(水平)。可指定的最大页面大小取决于照排机的最大可成像面积。 注意:在“打印”对话框中更改页面大小和方向,只能用于打印目的。若要更改画板的页面大小或方向,请使用“画板选项”对话框或控制面板中的“画板”选项。(请参阅编辑画板。)
我对Android很陌生,正在做我自己的迷你项目,我想改变一个特定像素的颜色。在寻找如何做到这一点时,我在几年前遇到了这个问题。我尝试了myBitmap。setPixel(10,10,Color.rgb(45,127,0)) ,但当我在手机上激活它时,我激活这行代码的那一刻它就崩溃了。每当我与位图交互时,它似乎就会崩溃<代码>int x=myBitmap。getHeight() 这一行也会使应用程
我想更改PDF文档中特定几页的页面方向。PDF文档是使用html2pdf在html模板外创建的。它是这样的:如果页面的内容(通常是一个表格)太宽而不能以纵向显示,则以横向显示页面。 按照[如何将页面旋转为横向,页面内容应该为纵向iTextpdf][1]中的提示 [1]:如何将页面旋转成横向,页面内容应该在纵向iTextpdf中我已经创建了我的自定义标签和TagWorker。 } 问题是:首先,这没
我有一个视图寻呼机,它的适配器上有片断列表。这就是我想要实现的场景: 假设我们有4个片段:Fragment1 Fragment2 Fragment3 Fragment4 我想在从Fragment4中滑动时跳过fragment3。 任何帮助都是非常感谢的。非常感谢你
本文向大家介绍Git 提交特定文件中的更改,包括了Git 提交特定文件中的更改的使用技巧和注意事项,需要的朋友参考一下 示例 您可以使用以下命令提交对特定文件的更改,并跳过暂存文件git add: 或者,您可以首先暂存文件: 稍后再提交: