普通用户
怎么才能自定义 hash.添加项目的位置?例如我 要把1115-3 排列到第2个 [复制链接]
立正 发表于 前天 22:52 43 4

' ****************************************************************************
' 版权说明:Copyright(C) All Rights Reserved VcnStudio
' 程序版本:V1.0
' 程序作者:
' 联系信息:
' 创建时间:
' 文件描述:
' 修改日志:
' ****************************************************************************

' 窗口成员变量、可在窗口任意代码位置中使用
变量 页面标记  文本型 = ""

事件 窗口创建完毕()
    线性布局1.布局方向 = 1  ' 1表示垂直方向
    线性布局1.宽度 = 匹配父
    线性布局1.高度 = 匹配父
	内容()
    初始化渲染效果()
    本对象.置内容可滚动()
结束 事件

函数 内容()
    变量 hash = 创建 哈希表()
    hash.添加项目("111-1","222")
    hash.添加项目("113-2","224")
    hash.添加项目("115-3","226")
    hash.添加项目("111-4","222")
    hash.添加项目("113-5","224")
    hash.添加项目("115-6","226")
    hash.添加项目("1111-1","222")
    hash.添加项目("1113-2","224")
    hash.添加项目("1115-3","226")
    hash.添加项目("1111-4","222")
    hash.添加项目("1113-5","224")
    hash.添加项目("1115-6","226")
    hash.创建遍历()

    变量 counter = 0
    变量 rowLayout = 创建 线性布局()
    rowLayout.宽度 = 匹配父
    rowLayout.布局方向 = 0
    rowLayout.高度 = 自适应
    
    判断循环(hash.取下一个())
        变量 a  线性布局 = 创建分类标签(hash.取项目键() + "",hash.取项目值() + "")
        rowLayout.添加组件(a)
        rowLayout.置组件外边距整体(a,DP到PX(3))
        counter = counter + 1

        如果 (counter == 3)
            线性布局1.添加组件(rowLayout)
            rowLayout = 创建 线性布局()
            rowLayout.宽度 = 匹配父
            rowLayout.布局方向 = 0
            rowLayout.高度 = 自适应
            counter = 0
        结束 如果
    结束循环

    ' 如果总数不是3的倍数,添加空标签补全
    判断循环 (counter > 0  counter < 3)
        变量 空标签 = 创建 线性布局()
        空标签.宽度 = DP到PX(110)
        空标签.高度 = 0
        rowLayout.添加组件(空标签)
        counter = counter + 1
    结束循环
    
    如果 (counter == 3)
        线性布局1.添加组件(rowLayout)
    结束 如果
结束 函数

函数 创建分类标签(标题  文本型,数据值  文本型)  线性布局
    变量 垂直根布局 = 创建 线性布局()
    变量 局部标签1 = 创建 标签()
    变量 局部标签2 = 创建 标签()
    ' 根据数据值是否存在设置背景颜色
    变量 背景颜色 = "#F3F499"
    如果 (数据值 != ""  数据值 != )
        背景颜色 = "#00FF00" ' 绿色
    结束 如果
    '
    垂直根布局.宽度 = DP到PX(113)
    垂直根布局.置绘制背景(创建圆角背景("#F3F499",DP到PX(5)))
    垂直根布局.内容对齐方式 = 垂直水平居中
    '
    局部标签1.标题 = 数据值
    局部标签2.标题 = 标题
    局部标签1.内容对齐方式 = 垂直水平居中
    局部标签2.内容对齐方式 = 垂直水平居中
    '
    垂直根布局.添加组件置权重(局部标签1,匹配父,0,1)
    垂直根布局.添加组件置权重(局部标签2,匹配父,0,1)
    '  
    垂直根布局.置外边距(DP到PX(10),DP到PX(10),DP到PX(10),DP到PX(10))
    返回 垂直根布局
结束 函数
立正 10小时前

垂直根布局 怎么设置权重?

回复
立正 10小时前
引用 @Course 的回复:

哈希表内部是无需排列的,因此无法直接像数组那样通过下标索引调整储存顺序。

如果要按照顺序取出数据或排列数据,可以将哈希表换成集合,集合是按照顺序添加数据的。

代码示例:

变量 集合1 = 创建 哈希表()
集合1.添加项目("111-1:222")
集合1.添加项目("115-3:226")

添加的数据以冒号分隔,取出时再分隔成两个数据。

垂直根布局 怎么设置权重?


回复
立正 前天 13:42
引用 @Course 的回复:

哈希表内部是无需排列的,因此无法直接像数组那样通过下标索引调整储存顺序。

如果要按照顺序取出数据或排列数据,可以将哈希表换成集合,集合是按照顺序添加数据的。

代码示例:

变量 集合1 = 创建 哈希表()
集合1.添加项目("111-1:222")
集合1.添加项目("115-3:226")

添加的数据以冒号分隔,取出时再分隔成两个数据。

非常感谢

回复
管理员 前天 23:02

哈希表内部是无需排列的,因此无法直接像数组那样通过下标索引调整储存顺序。

如果要按照顺序取出数据或排列数据,可以将哈希表换成集合,集合是按照顺序添加数据的。

代码示例:

变量 集合1 = 创建 哈希表()
集合1.添加项目("111-1:222")
集合1.添加项目("115-3:226")

添加的数据以冒号分隔,取出时再分隔成两个数据。

回复
 作者信息
立正
普通用户 云验证
专业开发指导服务

响应时间:5分钟

服务方式:官方1对1服务

工作时间:工作日 9:00 - 18:30

专业团队 · 开发指导 · 极速响应


官网 | 基础视频教程 | 在线文档 下载 VcnStudio IDE

© VcnStudio Inc All Rights Reserved

蜀ICP备17024229号