Nativescript 如何将数组数组传递给Java函数?

Nativescript 如何将数组数组传递给Java函数?,nativescript,Nativescript,我想在JavaScript中创建一个 定义为 public ColorStateList (int[][] states, int[] colors) 我不知道如何传递int[][]states参数 我试过了: A 结果: Error: Cannot marshal JavaScript argument 16842919,16842910 at index 0 to Java type. Cannot marshal JavaScript argument [I@8033d59,[I@1

我想在JavaScript中创建一个

定义为

public ColorStateList (int[][] states, int[] colors)
我不知道如何传递
int[][]states
参数


我试过了

A

结果:

Error: Cannot marshal JavaScript argument 16842919,16842910 at index 0 to Java type.
Cannot marshal JavaScript argument [I@8033d59,[I@1e86d1e at index 0 to Java type.
(1684291916842910是数组中的两个常量。)

B

结果:

Error: Cannot marshal JavaScript argument 16842919,16842910 at index 0 to Java type.
Cannot marshal JavaScript argument [I@8033d59,[I@1e86d1e at index 0 to Java type.

您是否尝试使用
Array.create()
?在中,它说“偶尔您必须从JavaScript创建Java数组。对于这个场景,我们将方法create添加到内置JavaScript数组对象中。”


这句话描述了您在IMO中尝试执行的操作。

您是否尝试使用
Array.create()
?在中,它说“偶尔您必须从JavaScript创建Java数组。对于这个场景,我们将方法create添加到内置JavaScript数组对象中。”

这句话描述了您在IMO中要做的事情。

这是有效的:

var states = Array.create("[I",2);
states[0] = Array.create("int",1);
states[0][0] = android.R.attr.state_pressed;
states[1] = Array.create("int",1);
states[1][0] = android.R.attr.state_enabled;
更多信息请点击此处:

这起作用了:

var states = Array.create("[I",2);
states[0] = Array.create("int",1);
states[0][0] = android.R.attr.state_pressed;
states[1] = Array.create("int",1);
states[1][0] = android.R.attr.state_enabled;

更多信息请点击此处:

是的,经过一个小时的搜索,我也找到了它。谢谢。是的,又找了一个小时后我也找到了。非常感谢。