【问题标题】:Manipulating QAndroidJniObject array操作 QAndroidJniObject 数组
【发布时间】:2017-09-24 02:07:41
【问题描述】:

当我从 MyActivity 中的 java 方法返回一个字符串时,我可以用

打印它
QAndroidJniObject asdf = QtAndroid::androidActivity().callObjectMethod("getPath", "(I)Ljava/lang/String;", 10)

qInfo() << asdf.toString();

但是如果我想返回一个数组呢?如何用C++操作,如何打印出来?

public class MyActivity extends QtActivity
{

    private String [] imagePaths = new String[100];

    @Override
    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

       //some code
    }

    public String [] getPath (int index) {

        /*some code*/
        return imagePaths;
    }
}

【问题讨论】:

    标签: java c++ arrays qt


    【解决方案1】:

    为了你的任务更好地使用

    jobjectArray asdf = QtAndroid::androidActivity()
            .callMethod<jobjectArray>("getPath", "(I)Ljava/lang/String;", 10);
    

    相反

    QAndroidJniObject asdf = QtAndroid::androidActivity()
            .callObjectMethod("getPath", "(I)Ljava/lang/String;", 10)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-03-16
      • 2020-01-05
      • 2016-06-06
      • 2011-01-08
      • 2018-12-24
      • 2012-10-07
      相关资源
      最近更新 更多