我怎样才能像ios一样在angular中制作时间选择器?
我必须在angular中实现一个时间选择器,其格式或外观与ios在angular中的格式或外观相同,我不知道从哪里开始 例如: 或者类似于: 如何识别5个出现在中间的数字? 您可以根据我怎样才能像ios一样在angular中制作时间选择器?,angular,user-interface,datetimepicker,timepicker,Angular,User Interface,Datetimepicker,Timepicker,我必须在angular中实现一个时间选择器,其格式或外观与ios在angular中的格式或外观相同,我不知道从哪里开始 例如: 或者类似于: 如何识别5个出现在中间的数字? 您可以根据窗口:滚动事件计算当前位置,如下所示: @HostListener("window:scroll", ['$event']) handleHHScroll(event) { this.hhValue = this.getValueByPosition(event.target.s
窗口:滚动事件计算当前位置,如下所示:
@HostListener("window:scroll", ['$event'])
handleHHScroll(event) {
this.hhValue = this.getValueByPosition(event.target.scrollTop, 'hh');
this.hhScroll$.next(this.hhValue);
}
getValueByPosition(y, type) {
let arr = type === 'hh' ? this.hhArray : this.mmArray;
let index = Math.floor((y+17)/33);
if(index < 0) index = 0;
if(index >= arr.length) index = arr.length -1;
return arr[index];
}
@HostListener(“窗口:滚动,['$event']))
handleHHScroll(事件){
this.hhValue=this.getValueByPosition(event.target.scrollTop,'hh');
this.hhsroll$.next(this.hhValue);
}
getValueByPosition(y,类型){
让arr=type=='hh'?this.hhArray:this.mmArray;
let指数=数学楼层((y+17)/33);
如果(指数<0)指数=0;
如果(索引>=arr.length)索引=arr.length-1;
返回arr[索引];
}
基于当前位置,您可以计算前后部分,并在UI上渲染它
上已经有了一个实现,看看是否有帮助。你能分享一下你已经尝试过的内容以及失败的原因吗?我所做的是创建一个带有溢出的div,其中有几个表示数字的标记,比如24个数字,只有5个显示在同一时间,因为溢出,并看到其他人,我向上或向下滚动,这是问题,如何识别的5个,是目前在中间的号码。我希望我已经回答了你的问题。谢谢你,这对我帮助很大!