日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

HarmonyOS實(shí)戰(zhàn):自定義時(shí)間選擇器

尤楓 ? 來源:jf_54996641 ? 作者:jf_54996641 ? 2025-06-09 15:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

最近在日常鴻蒙開發(fā)過程中,經(jīng)常會(huì)使用一些時(shí)間選擇器,鴻蒙官方提供的時(shí)間選擇器滿足不了需求,所以自己動(dòng)手自定義一些經(jīng)常會(huì)使用到的時(shí)間選擇器,希望能幫到你,建議點(diǎn)贊收藏!

實(shí)現(xiàn)效果

需求分析

  1. 默認(rèn)選中日期為當(dāng)前時(shí)間。
  2. 支持精確到時(shí)分。
  3. 注意閏年的計(jì)算。

技術(shù)實(shí)現(xiàn)

  1. 首先要想實(shí)現(xiàn)時(shí)間選擇器,需要使用一個(gè)上下可以滾動(dòng)的控件,這里使用鴻蒙官方提供的 TextPicker,TextPicker 控件支持內(nèi)容的上下滾動(dòng),可以用來顯示年月日的選擇器,確定了控件后,先計(jì)算日期。
new Promise< string[] >(async (resolve: (data: Array< string >) = > void, reject) = > {
      let list: Array< string > = []
      for (let start = this.currentYear; start <= this.currentYear + 1; start++) {
        //月份
        for (let i = (start == this.currentYear?this.startMonth:1); i < 13; i++) {
          let day: number = 0
          if (i == 1 || i == 3 || i == 5 || i == 7 || i == 8 || i == 10 || i == 12) {
            day = 31
          } else if (i == 2) {
            //閏年
            if (start % 400 == 0 || (start % 4 == 0 && start % 100 > 0)) {
              day = 29
            }
            // //平年
            else {
              day = 28
            }
          } else {
            day = 30
          }
          for (let j = ((start == this.currentYear&& i == this.startMonth)?this.startDay:1); j <= day; j++) {
            list.push(start + "-" + (i).toString().padStart(2,"0") + "-" + j.toString().padStart(2,"0"))
          }
        }
      }
      resolve(list)
    }).then((result: Array< string >) = > {
      this.timeList = result
    })

由于計(jì)算日期是比較耗時(shí)的操作,這里使用 Pormise 處理日期的計(jì)算,特別需要注意閏年的日期計(jì)算,這里以 1 年為周期。

  1. 根據(jù)計(jì)算得到的日期數(shù)據(jù)集合,使用 TextPicker 顯示年月日,同時(shí)默認(rèn)選中當(dāng)前時(shí)間 choseDay。
TextPicker({ range: this.timeList, value: this.choseDay })
            .pickerStyle()
            .onChange((value, index) = > {
              this.choseDay = value.toString()
            })
            .width(105)
  1. 計(jì)算時(shí)分?jǐn)?shù)據(jù)。
for (let i = 0; i < 60; i=i+this.skipMinute) {
      this.minuteList.push((i< 10?"0"+i:i).toString().concat(this.isShowUnit?"分":""))
    }
    for (let i = 0; i < 24; i++) {
      this.hourList.push((i< 10?"0"+i:i).toString().concat(this.isShowUnit?"時(shí)":""))
    }
  1. 分別使用 TextPicker 顯示時(shí)分。
TextPicker({
        range: this.hourList,
        value:this.currentHour+""
      }).pickerStyle()
        .onChange((value,index)= >{
          this.selectHour = value+""
          this.onChange(this.selectHour.concat(":"+this.selectMinute))

        })
      TextPicker({
        range: this.minuteList,
        value:this.currentMinute+""
      }).pickerStyle()
        .onChange((value,index)= >{
          this.selectMinute = value.toString()
          this.onChange(this.selectHour+":"+value)
        })
  1. 要讓時(shí)間選擇器默認(rèn)選擇當(dāng)前時(shí)間時(shí),需要注意選擇器的格式為"2012-01-01",需要在計(jì)算時(shí)不足 10 時(shí)補(bǔ) 0。否則時(shí)間選擇器不會(huì)默認(rèn)選中當(dāng)前時(shí)間。
  2. 鴻蒙官方的 Date 類默認(rèn)提供的月份是從 0 開始的,也就是說通過 data.getUTCMoth()獲取的月份默認(rèn)范圍為 [0,11],而選擇器需要顯示的是 [1,12],這里需要手動(dòng)處理。

總結(jié)

自定義時(shí)間選擇器看似簡單,其實(shí)需要注意的地方不少,時(shí)間的計(jì)算,時(shí)間的顯示格式,默認(rèn)選中當(dāng)前時(shí)間等。都需要開發(fā)者在日常開發(fā)中注意計(jì)算細(xì)節(jié)??吹竭@里相信你已經(jīng)學(xué)會(huì)了怎么自定義一個(gè)時(shí)間選擇器了,快去動(dòng)手試試吧!

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • HarmonyOS
    +關(guān)注

    關(guān)注

    80

    文章

    2157

    瀏覽量

    36316
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    使用Python/MyHDL創(chuàng)建自定義FPGA IP

    使用 Python/MyHDL 創(chuàng)建自定義 FPGA IP,與 Vivado 集成,并通過 PYNQ 進(jìn)行控制——實(shí)現(xiàn)軟件上的簡單硬件設(shè)計(jì)。
    的頭像 發(fā)表于 04-09 09:53 ?286次閱讀
    使用Python/MyHDL創(chuàng)建<b class='flag-5'>自定義</b>FPGA IP

    MCUXpresso SDK創(chuàng)建自定義清單

    in the next step 創(chuàng)建自定義清單文件 - 在編輯(例如 VS Code)中打開文件。 - 復(fù)制west.yml文件。為副本指定一個(gè)相關(guān)
    發(fā)表于 04-07 07:11

    極海APM32F427如何實(shí)現(xiàn)自定義USB HID設(shè)備與PC進(jìn)行通信

    最近需要使用到 APM32F427 枚舉成Custom HID設(shè)備進(jìn)行用戶自定義通信,但是官方的例程只有提供的HID枚舉為鼠標(biāo)或者鍵盤類型的設(shè)備。這里記錄一下,怎么使用Geehy官方的USB中間件,實(shí)現(xiàn)自定義的USB HID設(shè)備進(jìn)行用戶通信。
    的頭像 發(fā)表于 03-30 09:30 ?2798次閱讀
    極海APM32F427如何實(shí)現(xiàn)<b class='flag-5'>自定義</b>USB HID設(shè)備與PC進(jìn)行通信

    電能質(zhì)量監(jiān)測裝置可自定義監(jiān)測時(shí)段嗎?

    電能質(zhì)量監(jiān)測裝置普遍支持自定義監(jiān)測時(shí)段,現(xiàn)代中高端裝置還具備分時(shí)差異化監(jiān)測與靈活觸發(fā)能力,可按時(shí)間、事件或混合策略定制采集與存儲(chǔ),兼顧精度、效率與存儲(chǔ)成本。 一、自定義監(jiān)測時(shí)段的核心實(shí)現(xiàn)方式 1.
    的頭像 發(fā)表于 12-10 16:49 ?1185次閱讀

    如何保證電能質(zhì)量在線監(jiān)測裝置的自定義監(jiān)測時(shí)段功能的準(zhǔn)確性和穩(wěn)定性?

    要保證電能質(zhì)量在線監(jiān)測裝置 自定義監(jiān)測時(shí)段功能 的準(zhǔn)確性(時(shí)段執(zhí)行精準(zhǔn)、數(shù)據(jù)采集可靠)和穩(wěn)定性(長期無故障、異常自動(dòng)恢復(fù)),需從 時(shí)間基準(zhǔn)、硬件保障、軟件調(diào)度、配置校驗(yàn)、容錯(cuò)冗余、運(yùn)維校準(zhǔn) 六個(gè)維度
    的頭像 發(fā)表于 12-10 14:03 ?514次閱讀
    如何保證電能質(zhì)量在線監(jiān)測裝置的<b class='flag-5'>自定義</b>監(jiān)測時(shí)段功能的準(zhǔn)確性和穩(wěn)定性?

    電能質(zhì)量在線監(jiān)測裝置的自定義監(jiān)測時(shí)段功能有哪些應(yīng)用場景?

    電能質(zhì)量在線監(jiān)測裝置的 自定義監(jiān)測時(shí)段功能 ,核心價(jià)值是通過 “按需配置監(jiān)測時(shí)間、采樣頻率和數(shù)據(jù)策略”,實(shí)現(xiàn)精準(zhǔn)監(jiān)測、資源優(yōu)化與數(shù)據(jù)針對性分析,其應(yīng)用場景覆蓋工業(yè)生產(chǎn)、商業(yè)運(yùn)營、電網(wǎng)運(yùn)維、特殊保障等
    的頭像 發(fā)表于 12-10 14:01 ?546次閱讀
    電能質(zhì)量在線監(jiān)測裝置的<b class='flag-5'>自定義</b>監(jiān)測時(shí)段功能有哪些應(yīng)用場景?

    電能質(zhì)量在線監(jiān)測裝置可自定義監(jiān)測時(shí)段嗎?

    存儲(chǔ)策略及周期性重復(fù)規(guī)則,滿足不同場景下的監(jiān)測需求。 一、自定義監(jiān)測時(shí)段的核心能力 能力類型 具體說明 典型應(yīng)用 基礎(chǔ)時(shí)段設(shè)置 設(shè)定單次監(jiān)測的開始時(shí)間(精確到秒)、結(jié)束時(shí)間或持續(xù)時(shí)長 特定設(shè)備投運(yùn)測試(如新增變頻
    的頭像 發(fā)表于 12-10 13:58 ?477次閱讀
    電能質(zhì)量在線監(jiān)測裝置可<b class='flag-5'>自定義</b>監(jiān)測時(shí)段嗎?

    無圖形界面模式下自定義檢查工具的應(yīng)用

    此前文章已介紹 ANSA 中的自定義檢查工具。本文將探討該功能在無圖形界面(No-GUI)模式下的應(yīng)用,旨在滿足標(biāo)準(zhǔn)化工作流程的需求,適用于需要高度自動(dòng)化的前處理場景。通過集成自定義檢查,用戶可實(shí)現(xiàn)工作流程的高效自動(dòng)化運(yùn)行。
    的頭像 發(fā)表于 11-30 14:13 ?802次閱讀
    無圖形界面模式下<b class='flag-5'>自定義</b>檢查工具的應(yīng)用

    采用匯編指示符來使用自定義指令

    、采用.insn匯編指示符實(shí)現(xiàn)risc-v自定義指令。這種方式可以指定工具來選擇寄存,也可以自己選定寄存。指令格式如下(引自gnu 匯編
    發(fā)表于 10-28 06:02

    LOTO示波器自定義解碼功能—CANFD解碼

    LOTO示波器軟件更新了自定義解碼功能,并在bilibili上傳了演示視頻,視頻鏈接: https://www.bilibili.com/video/BV1wq3ezjEjQ
    的頭像 發(fā)表于 07-11 10:34 ?1225次閱讀
    LOTO示波器<b class='flag-5'>自定義</b>解碼功能—CANFD解碼

    大彩講堂:VisualTFT軟件如何自定義圓形進(jìn)度條

    VisualTFT軟件如何自定義圓形進(jìn)度條
    的頭像 發(fā)表于 07-07 17:10 ?1977次閱讀
    大彩講堂:VisualTFT軟件如何<b class='flag-5'>自定義</b>圓形進(jìn)度條

    HarmonyOS實(shí)戰(zhàn):3秒實(shí)現(xiàn)一個(gè)自定義輪播圖

    那么簡單,需要考慮的細(xì)節(jié)很多。不過在 HarmonyOS 中實(shí)現(xiàn)一個(gè)輪播圖卻是十分的簡單,本篇文章教你在最短的時(shí)間內(nèi)快速實(shí)現(xiàn)一個(gè)自定義的 輪播圖,建議點(diǎn)贊收藏!
    的頭像 發(fā)表于 06-24 17:06 ?1616次閱讀

    KiCad 中的自定義規(guī)則(KiCon 演講)

    “ ?Seth Hillbrand 在 KiCon US 2025 上為大家介紹了 KiCad 的規(guī)則系統(tǒng),并詳細(xì)講解了自定義規(guī)則的設(shè)計(jì)與實(shí)例。? ” ? 演講主要圍繞 加強(qiáng) KiCad 中的自定義
    的頭像 發(fā)表于 06-16 11:17 ?2602次閱讀
    KiCad 中的<b class='flag-5'>自定義</b>規(guī)則(KiCon 演講)

    HarmonyOS實(shí)戰(zhàn):高德地圖自定義定位圖標(biāo)展示

    的問題,建議點(diǎn)贊收藏! 實(shí)現(xiàn)效果 需求分析 首先需要實(shí)現(xiàn)一個(gè)自定義的圖標(biāo)替代系統(tǒng)默認(rèn)的箭頭。 獲取定位權(quán)限與位置信息。 獲取定位結(jié)果并展示當(dāng)前位置。 技術(shù)實(shí)現(xiàn) 在鴻蒙的實(shí)際開發(fā)過程中,地圖定位權(quán)限首先需要申請兩個(gè)權(quán)限,
    的頭像 發(fā)表于 06-09 14:59 ?872次閱讀
    <b class='flag-5'>HarmonyOS</b><b class='flag-5'>實(shí)戰(zhàn)</b>:高德地圖<b class='flag-5'>自定義</b>定位圖標(biāo)展示

    HarmonyOS應(yīng)用自定義鍵盤解決方案

    自定義鍵盤是一種替換系統(tǒng)默認(rèn)鍵盤的解決方案,可實(shí)現(xiàn)鍵盤個(gè)性化交互。允許用戶結(jié)合業(yè)務(wù)需求與操作習(xí)慣,對按鍵布局進(jìn)行可視化重構(gòu)、設(shè)置多功能組合鍵位,使輸入更加便捷和舒適。在安全防護(hù)層面,自定義鍵盤可以
    的頭像 發(fā)表于 06-05 14:19 ?2667次閱讀
    巴林左旗| 五大连池市| 泊头市| 句容市| 武城县| 锡林浩特市| 惠来县| 平原县| 墨竹工卡县| 嘉善县| 乌拉特后旗| 庆云县| 开封市| 岗巴县| 莒南县| 遂昌县| 吉木萨尔县| 札达县| 千阳县| 广河县| 武邑县| 贺兰县| 鄂尔多斯市| 沅陵县| 怀化市| 东辽县| 灵丘县| 南充市| 抚顺市| 资源县| 大兴区| 平山县| 杨浦区| 宁强县| 阳高县| 泗阳县| 安康市| 高要市| 吴桥县| 攀枝花市| 稻城县|