在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenHarmony自定義組件

ArkUI詳解 ? 來源:ArkUI詳解 ? 作者:ArkUI詳解 ? 2022-12-08 12:26 ? 次閱讀

自定義組件

@Builder

可通過@Builder裝飾器進行描述,該裝飾器可以修飾一個函數,此函數可以在build函數之外聲明,并在build函數中或其他@Builder修飾的函數中使用,從而實現在一個自定義組件內快速生成多個布局內容。

@BuilderParam

@BuilderParam裝飾器用于修飾自定義組件內函數類型的屬性(例如: @BuilderParam noParam: () => void),并且在初始化自定義組件時被@BuilderParam修飾的屬性必須賦值。

開發者在自定義組件中添加一個點擊跳轉操作。若直接在組件內嵌入事件方法,將會導致所有引入該自定義組件的地方均增加了該功能。為解決此問題,引入了@BuilderParam裝飾器,此裝飾器修飾的屬性值可為@Builder裝飾的函數,開發者可在初始化自定義組件時對此屬性進行賦值,為自定義組件增加特定的功能。

@Styles

ArkTS為了避免開發者對重復樣式的設置,通過@Styles裝飾器可以將多個樣式設置提煉成一個方法,直接在組件聲明時調用,通過@Styles裝飾器可以快速定義并復用自定義樣式。當前@Styles僅支持通用屬性。

@Styles function globalFancy () {
  .width(150)
  .height(100)
  .backgroundColor(Color.Pink)
}
?
Text('堅果')
        .globalFancy()
        .fontSize(30)

@Extend

@Extend裝飾器將新的屬性方法添加到Text、Column、Button等內置組件上,通過@Extend裝飾器可以快速地擴展原生組件。注意的是@Extend不能定義在自定義組件struct內。

// xxx.ets
@Extend(Text) function fancy (fontSize: number) {
  .fontColor(Color.Red)
  .fontSize(fontSize)
  .fontStyle(FontStyle.Italic)
  .fontWeight(600)
}
?
Text("堅果")
        .fancy(24)

@CustomDialog

@CustomDialog裝飾器用于裝飾自定義彈窗組件,使得彈窗可以動態設置內容及樣式。

?
@CustomDialog
struct DialogExample {
  controller: CustomDialogController
  action: () => void
?
  build() {
    Row() {
      Button('自定義dialog')
        .onClick(() => {
          this.controller.close()
          this.action()
        })
    }.padding(20)
  }
}
?
?
@Entry
@Component
struct AboutPage {
  @State message: string = 'Hello World'
  dialogController: CustomDialogController = new CustomDialogController({
    builder: DialogExample({ action: this.onAccept }),
    cancel: this.existDialog,
    autoCancel: true
  });
  onAccept() {
    console.info('onAccept');
  }
?
  existDialog() {
    console.info('Cancel dialog!');
  }
?
  build() {
    Row() {
      Column() {
        Text(this.message)
          .fontSize(50)
          .fontWeight(FontWeight.Bold) .onClick(() => {
          this.dialogController.open()
        })
      }
      .width('100%')
    }
    .height('100%')
  }
}

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 自定義組件
    +關注

    關注

    0

    文章

    2

    瀏覽量

    5993
  • OpenHarmony
    +關注

    關注

    25

    文章

    3722

    瀏覽量

    16313
收藏 人收藏

    評論

    相關推薦

    OpenHarmony應用開發之自定義彈窗

    以??橘子購物??中一個應用更新提示的彈窗介紹OpenHarmony自定義彈窗。 接口 自定義彈窗官方文檔:??自定義彈窗-彈窗-全局UI方法-
    發表于 09-06 14:40

    OpenHarmony自定義組件介紹

    一、創建自定義組件 在ArkUI中,UI顯示的內容均為組件,由框架直接提供的稱為系統組件,由開發者定義的稱為
    發表于 09-25 15:36

    OpenHarmony裝飾指定自定義組件:@BuilderParam裝飾器

    當開發者創建了自定義組件,并想對該組件添加特定功能時,例如在自定義組件中添加一個點擊跳轉操作。若直接在
    發表于 09-27 16:02

    1602自定義字符

    1602液晶能夠顯示自定義字符,能夠根據讀者的具體情況顯示自定義字符。
    發表于 01-20 15:43 ?1次下載

    鴻蒙上自定義組件的過程

    ?? 在實際開發過程中,我們經常會遇到一些系統原有組件無法滿足的情況,而 HarmonyOS 提供了自定義組件的方式,我們使用自定義組件來滿
    的頭像 發表于 11-10 09:27 ?2901次閱讀
    鴻蒙上<b class='flag-5'>自定義</b><b class='flag-5'>組件</b>的過程

    自定義IconSwitch小組件

    項目介紹: 項目名稱:IconSwitch 所屬系列:openharmony的第三方組件適配移植 功能:自定義Switch小部件 項目移植狀態:主功能完成 調用差異:無 開發版本:sdk6
    發表于 03-18 13:52 ?1次下載

    OpenHarmony自定義組件:ClearableInput和Keyboard

    組件介紹: 本示例包含了兩個OpenHarmony自定義組件,一個是ClearableInput,另一個是Keyboard。 ClearableInput
    發表于 03-18 15:21 ?1次下載
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>自定義</b><b class='flag-5'>組件</b>:ClearableInput和Keyboard

    OpenHarmony自定義組件FlowImageLayout

    組件介紹 本示例是OpenHarmony自定義組件FlowImageLayout。 用于將一個圖片列表以瀑布流的形式顯示出來。 調用方法
    發表于 03-21 10:17 ?3次下載
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>自定義</b><b class='flag-5'>組件</b>FlowImageLayout

    OpenHarmony自定義組件圓形圖像案例

    圓形圖像
    發表于 03-22 11:29 ?1次下載

    OpenHarmony自定義組件ProgressWithText

    組件介紹 本示例是OpenHarmony自定義組件ProgressWithText。 在原來進度條的上方加了一個文本框,動態顯示當前進度并調整位置。 調用方法
    發表于 03-23 14:03 ?1次下載
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>自定義</b><b class='flag-5'>組件</b>ProgressWithText

    OpenHarmony自定義組件CircleProgress

    組件介紹 本示例是OpenHarmony自定義組件CircleProgress。 用于定義一個帶文字的圓形進度條。 調用方法
    發表于 03-23 14:06 ?4次下載
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>自定義</b><b class='flag-5'>組件</b>CircleProgress

    三種自定義彈窗UI組件封裝的實現

    鴻蒙已經提供了全局 UI 方法自定義彈窗,本文是基于基礎的自定義彈窗來實現提示消息彈窗、確認彈窗、輸入彈窗的 UI 組件封裝。
    的頭像 發表于 03-30 09:28 ?3157次閱讀

    適用于鴻蒙的自定義組件框架Carbon案例教程

    項目名稱:Carbon 所屬系列:ohos的第三方組件適配移植 功能:一個適用于鴻蒙的自定義組件框架,幫助快速實現各種需要的效果 項目移植狀態:大部分移植 調用差異:基本沒有使用差異,可以參照
    發表于 04-07 09:49 ?5次下載

    自定義視圖組件教程案例

    自定義組件 1.自定義組件-particles(粒子效果) 2.自定義組件- pulse(脈沖b
    發表于 04-08 10:48 ?14次下載

    鴻蒙ArkUI實例:【自定義組件

    組件OpenHarmony 頁面最小顯示單元,一個頁面可由多個組件組合而成,也可只由一個組件組合而成,這些組件可以是ArkUI開發框架自
    的頭像 發表于 04-08 10:17 ?642次閱讀
    主站蜘蛛池模板: 色婷婷久久| 久久手机视频| 国产嫩草影院在线观看| 手机看片自拍| 天堂一区二区三区在线观看| 四虎中文| freesex性| 亚洲操综合| 四虎永久在线精品2022| 国产成人精品一区二区仙踪林| 国产男人午夜视频在线观看| 在线国产三级| 国产一级在线观看www色| 国产午夜在线观看视频| 亚洲欧美国产高清va在线播放| 好吊色青青青国产在线观看| 国产毛片哪里有| 性欧美xxxx乳高跟| www.成人av.com| 国产大片黄在线看免费| 日韩精品一区二区三区毛片 | 一级毛片免费不卡直观看| 日本天天操| 日韩一级在线观看| 天天干天天色天天| 最近2018年中文字幕大全一| 国产亚洲新品一区二区| 777影院| 日韩免费看| 免费看又爽又黄禁片视频1000| 伊人久久大香线蕉电影院| 沟沟人体一区二区| 一区二区三区网站| 久久一级毛片| 欧美性猛| 免费看黄色片的软件| 国产精品久久久久久久久免费| 五月网婷婷| 天天干天天色天天干| 亚洲第成色999久久网站| 亚洲精品理论|