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

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

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

3天內不再提示

鴻蒙ArkTS聲明式開發:跨平臺支持列表【Popup控制】 通用屬性

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-05 14:36 ? 次閱讀

Popup控制

給組件綁定popup彈窗,并設置彈窗內容,交互邏輯和顯示狀態。

說明:
開發前請熟悉鴻蒙開發指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。

接口

名稱參數類型描述
bindPopupshow: boolean, popup: [PopupOptions][CustomPopupOptions]8+

PopupOptions類型說明

名稱類型必填描述
messagestring彈窗信息內容。
primaryButton{ value: string, action: () => void }第一個按鈕。 value: 彈窗里主按鈕的文本。 action: 點擊主按鈕的回調函數。
secondaryButton{ value: string, action: () => void }第二個按鈕。 value: 彈窗里輔助按鈕的文本。 action: 點擊輔助按鈕的回調函數。
onStateChange(event: { isVisible: boolean }) => void彈窗狀態變化事件回調,參數isVisible為彈窗當前的顯示狀態。
arrowOffset9+[Length]popup箭頭在彈窗處的偏移。箭頭在氣泡上下方時,數值為0表示箭頭居最左側,偏移量為箭頭至最左側的距離,默認居中。箭頭在氣泡左右側時,偏移量為箭頭至最上側的距離,默認居中。如果顯示在屏幕邊緣,氣泡會自動左右偏移,數值為0時箭頭始終指向綁定組件。
showInSubWindow9+boolean是否在子窗口顯示氣泡,默認值為false。
mask10+boolean[ResourceColor]
messageOptions10+[PopupMessageOptions]設置彈窗信息文本參數。
targetSpace10+[Length]設置popup與目標的間隙。
placement10+[Placement]設置popup組件相對于目標的顯示位置,默認值為Placement.Bottom。
offset10+[Position]設置popup組件相對于placement設置的顯示位置的偏移。**說明:**不支持設置百分比。
enableArrow10+boolean設置是否顯示箭頭。 默認值:true

PopupMessageOptions10+類型說明

名稱類型必填描述
textColor[ResourceColor]設置彈窗信息文本顏色。
font[Font]設置彈窗信息字體屬性。

CustomPopupOptions8+類型說明

名稱類型必填描述
builder[CustomBuilder]提示氣泡內容的構造器。**說明:**popup為通用屬性,自定義popup中不支持再次彈出popup。對builder下的第一層容器組件不支持使用position屬性,如果使用將導致氣泡不顯示。
placement[Placement]氣泡組件優先顯示的位置,當前位置顯示不下時,會自動調整位置。 默認值:Placement.Bottom
popupColor[ResourceColor]提示氣泡的顏色。 默認值:'#4d4d4d'
enableArrowboolean是否顯示箭頭。 從API Version 9開始,如果箭頭所在方位側的氣泡長度不足以顯示下箭頭,則會默認不顯示箭頭。比如:placement設置為Left,此時如果氣泡高度小于箭頭的寬度(32vp)與氣泡圓角兩倍(48vp)之和(80vp),則實際不會顯示箭頭。 默認值:true
autoCancelboolean頁面有操作時,是否自動關閉氣泡。 默認值:true
onStateChange(event: { isVisible: boolean }) => void彈窗狀態變化事件回調,參數為彈窗當前的顯示狀態。
arrowOffset9+[Length]popup箭頭在彈窗處的偏移。箭頭在氣泡上下方時,數值為0表示箭頭居最左側,偏移量為箭頭至最左側的距離,默認居中。箭頭在氣泡左右側時,偏移量為箭頭至最上側的距離,默認居中。如果顯示在屏幕邊緣,氣泡會自動左右偏移,數值為0時箭頭始終指向綁定組件。
showInSubWindow9+boolean是否在子窗口顯示氣泡,默認值為false。
mask10+boolean[ResourceColor]
targetSpace10+[Length]設置popup與目標的間隙。
offset10+[Position]設置popup組件相對于placement設置的顯示位置的偏移。**說明:**不支持設置百分比。

示例

示例1

// xxx.ets
@Entry
@Component
struct PopupExample {
  @State handlePopup: boolean = false
  @State customPopup: boolean = false

  // popup構造器定義彈框內容
  @Builder popupBuilder() {
    Row({ space: 2 }) {
      Image($r("app.media.image")).width(24).height(24).margin({ left: -5 })
      Text('Custom Popup').fontSize(10)
    }.width(100).height(50).padding(5)
  }

  build() {
    Flex({ direction: FlexDirection.Column }) {
      // PopupOptions 類型設置彈框內容
      Button('PopupOptions')
        .onClick(() = > {
          this.handlePopup = !this.handlePopup
        })
        .bindPopup(this.handlePopup, {
          message: 'This is a popup with PopupOptions',
          showInSubWindow:false,
          primaryButton: {
            value: 'confirm',
            action: () = > {
              this.handlePopup = !this.handlePopup
              console.info('confirm Button click')
            }
          },
          // 第二個按鈕
          secondaryButton: {
            value: 'cancel',
            action: () = > {
              this.handlePopup = !this.handlePopup
              console.info('cancel Button click')
            }
          },
          onStateChange: (e) = > {
            console.info(JSON.stringify(e.isVisible))
            if (!e.isVisible) {
              this.handlePopup = false
            }
          }
        })
        .position({ x: 100, y: 50 })


      // CustomPopupOptions 類型設置彈框內容
      Button('CustomPopupOptions')
        .onClick(() = > {
          this.customPopup = !this.customPopup
        })
        .bindPopup(this.customPopup, {
          builder: this.popupBuilder,
          placement: Placement.Top,
          mask: {color:'0x33000000'},
          popupColor: Color.Yellow,
          enableArrow: true,
          showInSubWindow: false,
          onStateChange: (e) = > {
            if (!e.isVisible) {
              this.customPopup = false
            }
          }
        })
        .position({ x: 80, y: 200 })
    }.width('100%').padding({ top: 5 })
  }
}

figures/popup.gif

示例2

// xxx.ets
@Entry
@Component
struct PopupExample {
  @State handlePopup: boolean = false

  build() {
    Column() {
      Button('PopupOptions')
        .onClick(() = > {
          this.handlePopup = !this.handlePopup
        })
        .bindPopup(this.handlePopup, {
          message: 'This is a popup with PopupOptions',
          messageOptions: {
            textColor: Color.Red,
            font: {
              size: '14vp',
              style: FontStyle.Italic,
              weight: FontWeight.Bolder
            }
          },
          placement: Placement.Bottom,
          enableArrow: false,
          targetSpace: '15vp',
          onStateChange: (e) = > {
            console.info(JSON.stringify(e.isVisible))
            if (!e.isVisible) {
              this.handlePopup = false
            }
          }
        })
    }.margin(20)
  }
}

`HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`

搜狗高速瀏覽器截圖20240326151450.png

figures/popup_2.png

示例3

// xxx.ets
@Entry
@Component
struct PopupExample {
  @State customPopup: boolean = false

  // popup構造器定義彈框內容
  @Builder popupBuilder() {
    Row() {
      Text('Custom Popup Message').fontSize(10)
    }.height(50).padding(5)
  }

  build() {
    Column() {
      // CustomPopupOptions 類型設置彈框內容
      Button('CustomPopupOptions')
        .onClick(() = > {
          this.customPopup = !this.customPopup
        })
        .bindPopup(this.customPopup, {
          builder: this.popupBuilder,
          targetSpace: '15vp',
          enableArrow: false,
          onStateChange: (e) = > {
            if (!e.isVisible) {
              this.customPopup = false
            }
          }
        })
    }.margin(20)
  }
}

figures/popup_3.png

審核編輯 黃宇

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

    關注

    0

    文章

    5

    瀏覽量

    1335
  • 鴻蒙
    +關注

    關注

    57

    文章

    2362

    瀏覽量

    42884
收藏 人收藏

    評論

    相關推薦

    鴻蒙ArkTS聲明開發平臺支持列表【圖片邊框設置】 通用屬性

    從API Version 9開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
    的頭像 發表于 05-31 09:41 ?803次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【圖片邊框設置】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    HarmonyOS/OpenHarmony應用開發-ArkTS聲明開發范式

    基于ArkTS聲明開發范式的方舟開發框架是一套開發極簡、高性能、
    發表于 01-17 15:09

    鴻蒙ArkTS聲明開發平臺支持列表【按鍵事件】

    按鍵事件指組件與鍵盤、遙控器等按鍵設備交互時觸發的事件,適用于所有可獲焦組件,例如Button。對于Text,Image等默認不可獲焦的組件,可以設置focusable屬性為true后使用按鍵事件。
    的頭像 發表于 05-28 18:12 ?878次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【按鍵事件】

    鴻蒙ArkTS聲明開發平臺支持列表【邊框設置】 通用屬性

    從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
    的頭像 發表于 05-31 09:48 ?1026次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【邊框設置】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【背景設置】 通用屬性

    從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
    的頭像 發表于 05-31 15:22 ?713次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【背景設置】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【透明度設置】 通用屬性

    從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
    的頭像 發表于 06-03 15:59 ?645次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【透明度設置】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【顯隱控制通用屬性

    控制當前組件顯示或隱藏。注意,即使組件處于隱藏狀態,在頁面刷新時仍存在重新創建過程,因此當對性能有嚴格要求時建議使用[條件渲染]代替。 默認值:Visibility.Visible 從API version 9開始,該接口支持ArkT
    的頭像 發表于 06-03 14:46 ?604次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【顯隱<b class='flag-5'>控制</b>】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【形狀裁剪】 通用屬性

    參數為相應類型的組件,按指定的形狀對當前組件進行裁剪;參數為boolean類型時,設置是否按照父容器邊緣輪廓進行裁剪。 默認值:false 從API version 9開始,該接口支持ArkTS卡片中使用。
    的頭像 發表于 06-04 15:22 ?482次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【形狀裁剪】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【柵格設置】 通用屬性

    默認占用列數,指useSizeType屬性沒有設置對應尺寸的列數(span)時,占用的柵格列數。
    的頭像 發表于 06-05 09:28 ?405次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【柵格設置】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【菜單控制通用屬性

    為組件綁定彈出菜單,彈出菜單以垂直列表形式顯示菜單項,可通過長按、點擊或鼠標右鍵觸發。
    的頭像 發表于 06-06 09:17 ?698次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【菜單<b class='flag-5'>控制</b>】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【組件標識】 通用屬性

    id為組件的唯一標識,在整個應用內唯一。本模塊提供組件標識相關接口,可以獲取指定id組件的屬性,也提供向指定id組件發送事件的功能。
    的頭像 發表于 06-06 15:51 ?395次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【組件標識】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【多態樣式】 通用屬性

    設置組件不同狀態的樣式。 從API version 9開始,該接口支持ArkTS卡片中使用。
    的頭像 發表于 06-07 09:48 ?423次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【多態樣式】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【分布遷移標識】 通用屬性

    組件的分布遷移標識,指明了該組件在分布遷移場景下可以將特定狀態恢復到對端設備。
    的頭像 發表于 06-07 21:15 ?411次閱讀

    鴻蒙ArkTS聲明開發平臺支持列表【無障礙屬性通用屬性

    組件可以設置相應的無障礙屬性和事件來更好地使用無障礙能力。
    的頭像 發表于 06-11 17:30 ?415次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【無障礙<b class='flag-5'>屬性</b>】 <b class='flag-5'>通用</b><b class='flag-5'>屬性</b>

    鴻蒙ArkTS聲明開發平臺支持列表【文本通用

    文本通用屬性目前只針對包含文本元素的組件,設置文本樣式。
    的頭像 發表于 06-13 15:09 ?493次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>ArkTS</b><b class='flag-5'>聲明</b><b class='flag-5'>式</b><b class='flag-5'>開發</b>:<b class='flag-5'>跨</b><b class='flag-5'>平臺</b><b class='flag-5'>支持</b><b class='flag-5'>列表</b>【文本<b class='flag-5'>通用</b>】
    主站蜘蛛池模板: 最猛91大神ben与女教师| 在线观看免费国产| 免费一日本一级裸片在线观看| 老师办公室高h文小说| 亚洲国产一区二区三区在线观看 | 四虎影院美女| 免费一级特黄特色大片在线观看看| 午夜高清在线| 韩国三级理论在线观看视频 | 中文字幕av一区二区三区| 久草干| 国产网红主播精品福利大秀专区| 午夜手机福利视频| 天天插视频| 国产小视频在线观看| 手机看片www xiao2b cm| 中文字幕一区二区三区四区五区 | 理论片国产| 天天操天天草| 国产精品天天影视久久综合网| 天天摸天天躁天天添天天爽| 欧美射射射| 啪啪伊人网| 亚洲va老文色欧美黄大片人人| 国产精品1区2区3区在线播放| 日日爽天天干| 天天骑天天射| 成人午夜免费剧场| 国产福利影视| 亚洲一区二区影院| 一级做a爱免费观看视频| 中文字幕在线天堂| 特级生活片| 激情综合视频| 天天做爽夜夜做爽| 天天搞夜夜操| 波多野吉衣一区二区三区在线观看| 4480yy私人午夜a级国产| 亚洲人成网站在线在线| 性视频一区| 天堂色综合|