Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
1759f381
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3182
Star
105
Fork
807
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
93
列表
看板
标记
里程碑
合并请求
69
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
93
Issue
93
列表
看板
标记
里程碑
合并请求
69
合并请求
69
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
1759f381
编写于
8月 02, 2023
作者:
杜庆泉
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update data-type.md
上级
f354fcd3
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
23 addition
and
14 deletion
+23
-14
docs/uts/data-type.md
docs/uts/data-type.md
+23
-14
未找到文件。
docs/uts/data-type.md
浏览文件 @
1759f381
...
...
@@ -179,21 +179,29 @@ array1.forEach((element:string, index:number) => {
#### kotlin 平台的Array 特性
在kotlin平台上,Array 的具体实现类为:
`io.dcloud.uts.UTSArray`
。
在kotlin平台上,Array 的具体实现类为:
`io.dcloud.uts.UTSArray`
UTSArray 拉齐了Web平台 Array的功能和定义,可以满足大多数场景需要 ,但是在涉及与 系统API/三方sdk 交互部分会产生类型不一致的错误。
UTSArray 拉齐了Web平台 Array的功能和定义,可以满足大多数场景需要 ,但是在涉及与 系统API/三方sdk 交互部分
,因为 系统API/三方sdk 是基于 java/kotlin 开发 因此可能
会产生类型不一致的错误。
举个例子:
```
uts
let packageManager = UTSAndroid.getUniActivity()!.getPackageManager();
let intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
//
//
查询当前设备上安装了几个launcher
let resolveInfo = packageManager.queryIntentActivities(intent,0);
```
比如,上面的代码向 系统查询了 有多少应用可以响应
`launcher加载器`
,返回的 resolveInfo 是一个
`List<ResolveInfo>`
。这种情况下,我们建议的做法是将其先转换为UTSArray对象再进行其他处理和操作
上面的代码向 系统查询了有多少应用可以响应
`launcher`
行为 ,返回的 resolveInfo 是一个
`List<ResolveInfo>`
。
这种情况下,我们建议的做法是将其先转换为UTSArray对象再进行其他处理和操作
```
uts
let launcherList = UTSArray.fromNative(resolveInfo)
console.log(clothing.length);
```
...
...
@@ -204,28 +212,29 @@ let resolveInfo = packageManager.queryIntentActivities(intent,0);
```
let utsArr= ["hello","world"]
// UTSArray 转换 kotlin.collections.List
let kotlinList = utsArr.toKotlinList()
```
##### 2 我有一个原生类数组类型 需要转成一个UTSArray
// UTSArray 转换 kotlin.Array
let kotlinArray = utsArr.toTypedArray()
```
let utsArr= ["hello","world"]
let kotlinList = utsArr.toArray()
```
##### 3 我有一个kotlin.collections.List 我需要一个UTSArray
##### 2 我有一个原生类数组类型 需要转成一个UTSArray
```
// kotlin.collections.List 转换 UTSArray
let utsArr= mutableListOf("hello","world")
let kotlinList =
utsArr.toUTSArray()
let kotlinList =
UTSArray.fromNative(utsArr)
```
##### 4 我有一个java.util.Array 我需要一个UTSArray
```
// kotlin.Array 转换 UTSArray
let utsArr= arrayOf("hello","world")
let kotlinList =
utsArr.toMutableList().toUTSArray(
)
let kotlinList =
UTSArray.fromNative(utsArr
)
```
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录