中继器怎么做下拉列表?单页中继器调整排序极其简单的方法
中继器上下调整排列顺序,网上的教程大同小异,但交互比较复杂,有没有什么办法可以一步到位呢?作者总结了一个简单的方法,与你分享,希望对你有所帮助。
关于中继器上下调整排列顺序,目前网上的教程都大同小异,交互也蛮复杂的,需要记录移动的格数,还有判断移动后的各种情形。那有没有什么方法可以无脑的一步到位呢?今天教大家针对单页中继器排序一个极其简单的方法。
一、准备一般我演示排序喜欢用英文儿歌,A for Apple B for Ball……,英文字母本身也自带顺序嘛,这里我把单词换成了Axure相关的。所以先准备一个中继器,把默认的 [[Item.Column0]]字段改为[[Item.Alphabet]]里面填入以下英文儿歌。再准备个[[Item.Sort]]字段,填上数字1、2、3……用来做排序。
再准备一个向上图标、一个向下图标,全部元件结构如下。
中继器的交互如下,添加 [[Item.Sort]]字段按照 Number 排序,如果你的Axure显示不是Number (而是:数字、数值等),那可能会因为汉化包导致排序无效:
二、分析假如我们想让J字母向上移动一行,传统的解决办法要先做各种判断,最终核心操作是这两步:
- 把J字母的 [[Item.Sort]] 减1
- 把I字母的 [[Item.Sort]] 加1
那么,问题来了:“如果我们直接把J字母,放到H和I之间去,是不是更高效呢?”
三、0.5的魔法我们直接把J字母的 [[Item.Sort]]减1.5不就好了嘛!你就说10-1.5=8.5,是不是在8和9之间?
这时很多读者要怼我了:“加减1.5后出现负数或者超出中继器行数怎么办?”,答案是“凉拌!”
请再仔细想一下,负数了是不是还排在首位?超出中继器行数了是不是还排在末位?
所以只要确保顺序正确,我们唯一要去做的,就是重置排序列为正确的值。
四、教程现在我们要加按钮的交互了,先操作向上按钮,前面分析过,先做第一步加减1.5。
向上按钮的交互是:
预览一下,发现点击第一次的效果很好,多次点击就乱套了,因为没有重制 [[Item.Sort]]列。
继续,向上按钮的交互改往为:
再预览一下,这次翻车了,动都不动[笑哭]。
中继器并没有按照我们设想的那样重置序号,问题出在哪里了呢?
五、等待0毫秒(wait 0 ms)的妙用原因是第一次更新行后,中继器没有自动刷新,顺序并没有改变,所以重置序号时还是原来的顺序,表现出的效果当然是不动啦。
刷新中继器或是全量更新中继器有很多种方法,但是如果不增加额外的外部元件的话,要属(等待0毫秒)最好用了。
其实我们只要在两次“更新行”中间加上“等待0毫秒(wait 0 ms)”就行了,向上按钮的交互继续优化为:
然后再补齐向下按钮的交互。
预览测试一下,这次就完全OK了。
六、进阶请自行尝试“向上/下移动5行”、“置顶/置底”的交互。
七、总结虽然跟其他方法一样要更新两次中继器,但这种方法更“无脑”,不需要复杂的逻辑判断,只要先把需要调整的行放在正确的位置上,然后重置序号即可。
- 向上移动N行,更新 [[Item.Sort]]列为 [[Item.Sort – N – 0.5]],然后重置序号。
- 向下移动N行,更新 [[Item.Sort]]列为 [[Item.Sort N 0.5]],然后重置序号。
- 置顶,更新 [[Item.Sort]]列为 0.5,然后重置序号。
- 置底,更新 [[Item.Sort]]列为 [[Item.Repeater.dataCount 0.5]],然后重置序号。
因为中继器里的 [[Item.index]]只对当前显示页有效,所以更适合单页的中继器展示。
如果是分页的中继器,还需要加上 [[每页项数量*(当前页码-1)]],所以并不推荐新手使用。
如果你的中继器有“筛选”,那这个方法完全不适用!
本文由 @Jorkin 原创发布于人人都是产品经理,未经许可,禁止转载
题图来自 Unsplash,基于 CC0 协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。
- 02-222023年新番角色人气排行:冬季番受期待作品排行榜
- 03-12卡地亚一般什么时候打折?卡地亚你所不知道的秘密
- 03-17让孩子知道有付出才会有收获:有付出才有收获
- 02-14淄博山外山滑雪场推荐:这个冬天来淄博临淄热气球
- 03-02ue4 婚礼设计,案例精选,各地不到2W的草坪婚礼
- 02-16非公版是什么?首款非公版Vega来袭,ROGSTRIX
- 04-28西安城南客运站班车,西安城西客运站最新班车信息
- 10-14天津东丽区哪个小区值得买房?购买天津市东丽区这些小区的人后悔了
- 01-19满足条件但是不能升级win11:PC用户注意想要免费升级Win11
- 10-06iphone11和12入手哪个更好?iPhone,12有必要升级到
- 04-15protect the earth英语范文:英语原版阅读,Howto
- 01-02最早的奏折真迹,千年圣旨小史奉天承运的
- 10-28数学的正态分布公式:数学思维的妙处,11
- 01-16胃不好空腹吃花生米管用吗?早上空腹吃几粒花生滋养胃部
- 04-11刚进珠峰第一个看日出的地方 初夏晴日,看壮美珠峰
- 10-18皮肤上没有皮疹会是梅毒吗?不瘙痒的皮肤病小心是梅毒哦
热门
推荐
- 1我与公司企业共成长征文范文324
- 2工程项目策划书方案范本315
- 32020年山东菏泽鄄城县卫健系统事业单位公开招聘工作人员简章80人360
- 4春季过敏患者有哪些饮食原则311
- 5酒吧精彩的广告词289
- 690后属虎的今年多大457
- 7什么是夫妻共同财产320
- 8农村远程教育论文157