apicloud apicloud

注册
查看: 1052|回复: 8

[已解决] UICalendar模块问题反馈

主题:
51
帖子:
819
云币:
172

[已解决] UICalendar模块问题反馈

1052 8 | 发表于 2020-1-15 18:51:01 |阅读模式 | |
模块名称 UICalendar
模块版本  v1.0.9

问题描述:

1.当模块使用open方法后 期望能够自动选择当前日期(也就是把当前日期使用选中的样式覆盖).
期望提供主动设置日期高亮的api,或者是添加是否打开选中当前日期的参数.

2.iOS版本的模块 标记的特殊日期"specialDate"的数据点击后没有响应回调 和安卓不一致
特殊日期不是禁用日期 期望能够添加点击回调响应

主题:
367
帖子:
56492
云币:
23255
发表于 2020-1-15 19:13:13 |
1.  获取今天日期后,调setDate 接口可以实现。

2.  我这里测试有回调:
{"eventType":"show","id":0,"year":2020,"month":"01","day":15}
{"eventType":"special","id":0,"year":2020,"month":"01","day":14}
{"eventType":"cancelSpecial","id":0,"year":2020,"month":"01","day":14}

  1.         newRecipeNotice = ['2020-01-08', '2020-01-14', '2019-12-11', '2019-11-15', '2020-01-18'];
  2.                 for (var i = 0; i < newRecipeNotice.length; i++) {
  3.                         var obj = {};
  4.                         obj.date = newRecipeNotice[i];
  5.                         obj.color = '#f00';
  6.                         obj.bg = 'widget://icon/chuqin.png';
  7.                         specialDateList.push(obj);
  8.                 }
  9.                 UICalendar = api.require('UICalendar');
  10.                 UICalendar.open({
  11.                         multipleSelect: true,
  12.                         rect: {
  13.                                 x: 0,
  14.                                 y: 170,
  15.                                 w: api.frameWidth,
  16.                                 h: 208
  17.                         },
  18.                         styles: {
  19.                                 bg: '#fff',
  20.                                 week: {
  21.                                         weekdayColor: '#3d3d3d',
  22.                                         weekendColor: '#3d3d3d',
  23.                                         size: 12
  24.                                 },
  25.                                 date: {
  26.                                         color: '#0f0',
  27.                                         selectedColor: '#f00',
  28.                                         selectedBg: 'widget://image/chuqin.png',
  29.                                         size: 12
  30.                                 },
  31.                                 today: {
  32.                                         color: '#fff',
  33.                                         bg: 'widget://image/tday.png'
  34.                                 },
  35.                                 specialDate: {
  36.                                         color: '#f00',
  37.                                         bg: 'widget://image/chuqin.png'
  38.                                 }
  39.                         },
  40.                         specialDate: specialDateList,
  41.                         //switchMode: 'none',
  42.                         fixedOn: api.frameName,
  43.                         fixed: false
  44.                 }, function(ret, err) {
  45.                         if (ret) {
  46.                                 console.log(JSON.stringify(ret))
  47.                                 // var year = ret.year;
  48.                                 // var month = ret.month;
  49.                                 // var day = ret.day;
  50.                                 // if (month < 10) {
  51.                                 //         month = "0" + month
  52.                                 // }
  53.                                 // if (day < 10) {
  54.                                 //         day = '0' + day;
  55.                                 // }
  56.                                 // var cancleDay;
  57.                                 // if (ret.eventType == "show") {
  58.                                 //         //addDataToHtml(dayIndex, tdTime, tdDate);
  59.                                 // } else if (ret.eventType == "special") {
  60.                                 //         //cancleDay = year + '-' + month + '-' + day;
  61.                                 //         //cancleSpecialDay(cancleDay);
  62.                                 // } else if (ret.eventType == "normal") {
  63.                                 //         UICalendar.setSpecialDates({
  64.                                 //                 specialDates: [{
  65.                                 //                         date: year + '-' + month + '-' + day,
  66.                                 //                         color: '#f00',
  67.                                 //                         bg: 'widget://image/chuqin.png'
  68.                                 //                 }]
  69.                                 //         });
  70.                                 // } else if (ret.eventType == "special") {}
  71.                         } else {
  72.                                 //alert(JSON.stringify(err));
  73.                         }
  74.                 });
复制代码
【奖金150万】“用友·华为云杯”第三届开发者大赛报名开启,APICloud开发者直接报名参加:点击报名

官方版主

UID:722608

主题:
9
帖子:
303
云币:
364
发表于 2020-1-16 11:37:03 |
技术支持-F 发表于 2020-1-15 19:13
1.  获取今天日期后,调setDate 接口可以实现。

2.  我这里测试有回调:

经过测试发现以下情况:

1. iOS端特殊日期点选的确有回调 但是UI上没有变化(没有选中的样式)
2. 为了解决第一个问题,继而主动使用setDate接口,但是iOS端通过setDate 接口设置选中日期后  UI上没有变化(没有选中的样式)
3.安卓调用 setDate 接口后 isAfter 参数所控制的 "今天以后的日期是否置灰不可选"失效,全部变为普通可选日期样式

主题:
51
帖子:
819
云币:
172
 楼主| 发表于 2020-1-16 13:58:51 |
技术支持-F 发表于 2020-1-15 19:13
1.  获取今天日期后,调setDate 接口可以实现。

2.  我这里测试有回调:


经过测试发现:

1. iOS 端通过 setDate 接口设置选中日期后 目标日期并未应用选中后的样式
2. 安卓端通过调用 setDate 接口后导致参数 isAfter 控制的"今天以后的日期是否置灰不可选"的灰色样式失效,都变成了普通日期样式
3. [次要] 安卓端关闭模块所在的frame,上一次选中的日期样式并未清除,(主动使用模块的close方法后依然存在)(问题不大,打开时主动设置选中日期即可)

总结起来感觉还是两端的样式优先级的问题


主题:
367
帖子:
56492
云币:
23255
发表于 2020-1-16 14:46:49 |
水木易安 发表于 2020-1-16 13:58
经过测试发现:

1. iOS 端通过 setDate 接口设置选中日期后 目标日期并未应用选中后的样式

已反馈给模块技术
【奖金150万】“用友·华为云杯”第三届开发者大赛报名开启,APICloud开发者直接报名参加:点击报名

主题:
367
帖子:
56492
云币:
23255
发表于 2020-1-17 14:02:03 |
水木易安 发表于 2020-1-16 13:58
经过测试发现:

1. iOS 端通过 setDate 接口设置选中日期后 目标日期并未应用选中后的样式

修复了,重新编译使用。
【奖金150万】“用友·华为云杯”第三届开发者大赛报名开启,APICloud开发者直接报名参加:点击报名

主题:
51
帖子:
819
云币:
172
 楼主| 发表于 2020-1-17 14:18:26 |
技术支持-F 发表于 2020-1-17 14:02
修复了,重新编译使用。

好的  刚刚测试了一下

发现还有一个问题

在iOS端 通过setDate 接口设置高亮日期后 : 如果目标日期为"特殊日期",未应用"选中样式"
(普通日期和安卓表现正常)

主题:
367
帖子:
56492
云币:
23255
发表于 2020-1-17 18:04:10 |
水木易安 发表于 2020-1-17 14:18
好的  刚刚测试了一下

发现还有一个问题

修复了。
【奖金150万】“用友·华为云杯”第三届开发者大赛报名开启,APICloud开发者直接报名参加:点击报名

主题:
51
帖子:
819
云币:
172
 楼主| 发表于 2020-1-19 17:45:46 |

好的 谢谢
您需要登录后才可以回帖 登录 | 立即注册

快速回复 返回顶部 返回列表