h***@163.com
h***@163.com
  • 发布:2023-08-22 18:25
  • 更新:2023-08-23 10:29
  • 阅读:145

【报Bug】UTS 类型生成有问题

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 3.8.12

手机系统: Android

手机系统版本号: Android 14

手机厂商: 华为

手机机型: xiaomi

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

预期结果:

实际结果:

bug描述:

尝试使用uts 开发安卓插件 但是发现了个问题
当安卓class内部存在class嵌套,生成的d.ts文件 并不是正常的 举个例子
android.net.VpnService.Builder
在uts中 builder不存在

2023-08-22 18:25 负责人:无 分享
已邀请:
DCloud_Android_DQQ

DCloud_Android_DQQ

java中的内部类需要特殊语法书写。 具体参考 hello uts native-page 插件。 关于 listview adapater的写法

  • h***@163.com (作者)

    不好意思 我刚看了 没有看到您说这个listview adapater例子

    2023-08-22 18:29

  • DCloud_Android_DQQ

    回复 h***@163.com: 发下面了

    2023-08-23 10:29

DCloud_Android_DQQ

DCloud_Android_DQQ

class FruitAdapter extends RecyclerView.Adapter<FruitAdapter.ViewHolder>{  

    mFruitList: Array<String> = []  

    constructor(param:Array<String>){  
        super()  
        mFruitList = param  
    }  

    ViewHolder = class extends RecyclerView.ViewHolder {  

        fruitName:TextView;  
        constructor(view:View) {  
            super(view);  
            fruitName = view.findViewById(R.id.fruit_name) as TextView;  
        }  
    }  

    override onCreateViewHolder(  
        parent: ViewGroup,  
        viewType: Int  
    ): ViewHolder {  
        let view: View =  
            LayoutInflater.from(parent.context).inflate(R.layout.fruit_item, parent, false)  
        return ViewHolder(view)  
    }  

    override onBindViewHolder(holder: ViewHolder, position: Int) {  
        let fruit: String = mFruitList[position]  
        holder.fruitName.setText(fruit)  
    }  

    override getItemCount(): Int {  
        return mFruitList.size  
    }  

}
  • h***@163.com (作者)

    您指的是ViewHolder 这个吗? 这应该算自定义的属性吧 如果这样写的话 得完整的将内部service重新重载一遍吧?

    2023-08-23 21:39

要回复问题请先登录注册