鴻蒙Harmony應用開發—ArkTS聲明式開發(通用屬性:位置設置)

設置組件的對齊方式、布局方向和顯示位置。

說明:

從API Version 7開始支持。后續版本如有新增內容,則采用上角標單獨標記該內容的起始版本。

align

align(value: Alignment)

設置容器元素繪制區域內的子元素的對齊方式。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valueAlignment設置容器元素繪制區域內的子元素的對齊方式。
只在Stack、Button、Marquee、StepperItem、text、TextArea、TextInput、FolderStack中生效,其中和文本相關的組件Marquee、text、TextArea、TextInput的align結果參考textAlign。
不支持textAlign屬性的組件則無法設置水平方向的文字對齊。
默認值:Alignment.Center

direction

direction(value: Direction)

設置容器元素內主軸方向上的布局。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valueDirection設置容器元素內主軸方向上的布局。
例:Column組件的主軸為縱軸。
默認值:Direction.Auto

position

position(value: Position)

絕對定位,設置子元素左上角相對于父容器左上角偏移位置。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valuePosition絕對定位,設置子元素左上角相對于父容器左上角偏移位置。在布局容器中,設置該屬性不參與父容器布局,即不占位,僅在繪制時進行位置調整。
適用于置頂顯示、懸浮按鈕等組件在父容器中位置固定的場景。

markAnchor

markAnchor(value: Position)

設置子元素在位置定位時的錨點。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valuePosition設置子元素在位置定位時的錨點,以元素左上角作為基準點進行偏移。通常配合position和offset屬性使用,單獨使用時,效果類似offset
API version 9及以前,默認值為:
{
x: 0,
y: 0
}
API version 10:無默認值。

offset

offset(value: Position)

相對定位,設置子元素相對于自身的額外偏移量。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valuePosition相對定位,設置子元素相對于自身的額外偏移量。設置該屬性后,子組件正常參與父容器布局,依然會占位,在繪制時基于父容器給予的offset做一次額外的偏移。
API version 9及以前,默認值為:
{
x: 0,
y: 0
}
API version 10:無默認值。

alignRules9+

alignRules(value: AlignRuleOption)

指定設置在相對容器中子組件的對齊規則,僅當父容器為RelativeContainer時生效。

卡片能力:?從API version 9開始,該接口支持在ArkTS卡片中使用。

系統能力:?SystemCapability.ArkUI.ArkUI.Full

參數:

參數名類型必填說明
valueAlignRuleOption指定設置在相對容器中子組件的對齊規則。

AlignRuleOption對象說明

從API version 9開始,該接口支持在ArkTS卡片中使用。

名稱類型描述
left{ anchor: string, align:?HorizontalAlign?}設置左對齊參數。
-?anchor:設置作為錨點的組件的id值。
-?align:設置相對于錨點組件的對齊方式。
right{ anchor: string, align:?HorizontalAlign?}設置右對齊參數。
-?anchor:設置作為錨點的組件的id值。
-?align:設置相對于錨點組件的對齊方式。
middle{ anchor: string, align:?HorizontalAlign?}設置橫向居中對齊方式的參數。
-?anchor:設置作為錨點的組件的id值。
-?align:設置相對于錨點組件的對齊方式。
top{ anchor: string, align:?VerticalAlign?}設置頂部對齊的參數。
-?anchor:設置作為錨點的組件的id值。
-?align:設置相對于錨點組件的對齊方式。
bottom{ anchor: string, align:?VerticalAlign?}設置底部對齊的參數。
-?anchor:設置作為錨點的組件的id值。
-?align:設置相對于錨點組件的對齊方式。
center{ anchor: string, align:?VerticalAlign?}設置縱向居中對齊方式的參數。
bias{ horizontal: number, vertical: number }設置組件在錨點約束下的偏移參數,其值為到左/上側錨點的距離與錨點間總距離的比值。
-?horizontal:水平方向上的bias值。
-?vertical:垂直方向上的bias值。
-?當子組件的width可以確定并且有2個水平方向的錨點時生效。
-?當子組件的height可以確定并且有2個垂直方向的錨點時生效。
默認值:{
horizontal:?0.5,
vertical:?0.5
}。

示例

示例1

// xxx.ets
@Entry
@Component
struct PositionExample1 {build() {Column() {Column({ space: 10 }) {// 元素內容<元素寬高,設置內容在與元素內的對齊方式Text('align').fontSize(9).fontColor(0xCCCCCC).width('90%')Stack() {Text('First show in bottom end').height('65%').backgroundColor(0xD2B48C)Text('Second show in bottom end').backgroundColor(0xF5DEB3).opacity(0.9)}.width('90%').height(50).margin({ top: 5 }).backgroundColor(0xFFE4C4).align(Alignment.BottomEnd)Stack() {Text('top start')}.width('90%').height(50).margin({ top: 5 }).backgroundColor(0xFFE4C4).align(Alignment.TopStart)// 父容器設置direction為Direction.Ltr,子元素從左到右排列Text('direction').fontSize(9).fontColor(0xCCCCCC).width('90%')Row() {Text('1').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3)Text('2').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C)Text('3').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3)Text('4').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C)}.width('90%').direction(Direction.Ltr)// 父容器設置direction為Direction.Rtl,子元素從右到左排列Row() {Text('1').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3).textAlign(TextAlign.End)Text('2').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C).textAlign(TextAlign.End)Text('3').height(50).width('25%').fontSize(16).backgroundColor(0xF5DEB3).textAlign(TextAlign.End)Text('4').height(50).width('25%').fontSize(16).backgroundColor(0xD2B48C).textAlign(TextAlign.End)}.width('90%').direction(Direction.Rtl)}}.width('100%').margin({ top: 5 })}
}

align.png

示例2

// xxx.ets
@Entry
@Component
struct PositionExample2 {build() {Column({ space: 20 }) {// 設置子組件左上角相對于父組件左上角的偏移位置Text('position').fontSize(12).fontColor(0xCCCCCC).width('90%')Row() {Text('1').size({ width: '30%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16).textAlign(TextAlign.Center)Text('2 position(30, 10)').size({ width: '60%', height: '30' }).backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16).align(Alignment.Start).position({ x: 30, y: 10 })Text('3').size({ width: '45%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16).textAlign(TextAlign.Center)Text('4 position(50%, 70%)').size({ width: '50%', height: '50' }).backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16).position({ x: '50%', y: '70%' })}.width('90%').height(100).border({ width: 1, style: BorderStyle.Dashed })// 相對于起點偏移,其中x為最終定位點距離起點水平方向間距,x>0往左,反之向右。// y為最終定位點距離起點垂直方向間距,y>0向上,反之向下Text('markAnchor').fontSize(12).fontColor(0xCCCCCC).width('90%')Stack({ alignContent: Alignment.TopStart }) {Row().size({ width: '100', height: '100' }).backgroundColor(0xdeb887)Text('text').fontSize('30px').textAlign(TextAlign.Center).size({ width: 25, height: 25 }).backgroundColor(Color.Green).markAnchor({ x: 25, y: 25 })Text('text').fontSize('30px').textAlign(TextAlign.Center).size({ width: 25, height: 25 }).backgroundColor(Color.Green).markAnchor({ x: -100, y: -25 })Text('text').fontSize('30px').textAlign(TextAlign.Center).size({ width: 25, height: 25 }).backgroundColor(Color.Green).markAnchor({ x: 25, y: -25 })}.margin({ top: 25 }).border({ width: 1, style: BorderStyle.Dashed })// 相對定位,x>0向右偏移,反之向左,y>0向下偏移,反之向上Text('offset').fontSize(12).fontColor(0xCCCCCC).width('90%')Row() {Text('1').size({ width: '15%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16).textAlign(TextAlign.Center)Text('2  offset(15, 30)').size({ width: 120, height: '50' }).backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16).align(Alignment.Start).offset({ x: 15, y: 30 })Text('3').size({ width: '15%', height: '50' }).backgroundColor(0xdeb887).border({ width: 1 }).fontSize(16).textAlign(TextAlign.Center)Text('4 offset(-5%, 20%)').size({ width: 100, height: '50' }).backgroundColor(0xbbb2cb).border({ width: 1 }).fontSize(16).offset({ x: '-5%', y: '20%' })}.width('90%').height(100).border({ width: 1, style: BorderStyle.Dashed })}.width('100%').margin({ top: 25 })}
}

position.png

最后,有很多小伙伴不知道學習哪些鴻蒙開發技術?不知道需要重點掌握哪些鴻蒙應用開發知識點?而且學習時頻繁踩坑,最終浪費大量時間。所以有一份實用的鴻蒙(Harmony NEXT)資料用來跟著學習是非常有必要的。?

這份鴻蒙(Harmony NEXT)資料包含了鴻蒙開發必掌握的核心知識要點,內容包含了ArkTS、ArkUI開發組件、Stage模型、多端部署、分布式應用開發、音頻、視頻、WebGL、OpenHarmony多媒體技術、Napi組件、OpenHarmony內核、Harmony南向開發、鴻蒙項目實戰等等)鴻蒙(Harmony NEXT)技術知識點。

希望這一份鴻蒙學習資料能夠給大家帶來幫助,有需要的小伙伴自行領取,限時開源,先到先得~無套路領取!!

?獲取這份完整版高清學習路線,請點擊→純血版全套鴻蒙HarmonyOS學習資料

鴻蒙(Harmony NEXT)最新學習路線

  • ?HarmonOS基礎技能

  • HarmonOS就業必備技能?
  • ?HarmonOS多媒體技術

  • 鴻蒙NaPi組件進階

  • HarmonOS高級技能

  • 初識HarmonOS內核?
  • 實戰就業級設備開發

有了路線圖,怎么能沒有學習資料呢,小編也準備了一份聯合鴻蒙官方發布筆記整理收納的一套系統性的鴻蒙(OpenHarmony )學習手冊(共計1236頁)鴻蒙(OpenHarmony )開發入門教學視頻,內容包含:ArkTS、ArkUI、Web開發、應用模型、資源分類…等知識點。

獲取以上完整版高清學習路線,請點擊→純血版全套鴻蒙HarmonyOS學習資料

《鴻蒙 (OpenHarmony)開發入門教學視頻》

《鴻蒙生態應用開發V2.0白皮書》

圖片

《鴻蒙 (OpenHarmony)開發基礎到實戰手冊》

OpenHarmony北向、南向開發環境搭建

圖片

?《鴻蒙開發基礎》

  • ArkTS語言
  • 安裝DevEco Studio
  • 運用你的第一個ArkTS應用
  • ArkUI聲明式UI開發
  • .……

圖片

?《鴻蒙開發進階》

  • Stage模型入門
  • 網絡管理
  • 數據管理
  • 電話服務
  • 分布式應用開發
  • 通知與窗口管理
  • 多媒體技術
  • 安全技能
  • 任務管理
  • WebGL
  • 國際化開發
  • 應用測試
  • DFX面向未來設計
  • 鴻蒙系統移植和裁剪定制
  • ……

圖片

《鴻蒙進階實戰》

  • ArkTS實踐
  • UIAbility應用
  • 網絡案例
  • ……

圖片

?獲取以上完整鴻蒙HarmonyOS學習資料,請點擊→純血版全套鴻蒙HarmonyOS學習資料

總結

總的來說,華為鴻蒙不再兼容安卓,對中年程序員來說是一個挑戰,也是一個機會。只有積極應對變化,不斷學習和提升自己,他們才能在這個變革的時代中立于不敗之地。?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/713361.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/713361.shtml
英文地址,請注明出處:http://en.pswp.cn/news/713361.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

收盤價時空模式挖掘與多股票走勢聚類分析:探索市場行為共性

收盤價時空模式挖掘與多股走勢聚類分析:探索市場行為共性 一.版本信息二.操作步驟1.下載各股歷史交易數據A.代碼(download_stocks.py)B.執行2.遍歷各股的csv文件,提取收盤價數據,歸一化,繪制曲線,保存圖片A.代碼B.執行3.用上面的圖片集訓練VAE模型A.代碼B.執行4.用上面訓出的V…

【遠程開發調試】Pycharm或Webstorm使用遠程服務器調試開發

Pycharm如何使用遠程服務器環境進行開發_pycharm使用服務器環境-CSDN博客 Pycharm配置遠程調試_pycharm 遠程調試-CSDN博客

langchain學習筆記(八)

RunnableLambda: Run Custom Functions | &#x1f99c;?&#x1f517; Langchain 可以在pipeline中使用任意函數&#xff0c;但要注意所有的輸入都只能是“1”個參數&#xff0c;當函數需要多個參數時需要采用字典來包裝 itemgetter用法見langchain學習筆記&#xff08;六&…

【系統分析師】-系統配置與性能評價

1、性能指標 主頻&#xff1a;又稱時鐘頻率&#xff0c;1GHZ表示1秒有1G個時鐘周期 1s10^9ns 主頻外頻 * 倍頻 時鐘周期 主頻的倒數指令周期&#xff1a;取出并執行一條指令的時間 總線周期&#xff1a;一個訪存儲器或IO操作所用時間平均執行周期數&#xff1a;CPI表示…

【學習心得】網絡中常見數據格式(爬蟲入門知識)

在爬蟲爬取數據的之前&#xff0c;必須先系統的了解一下我們待爬取的數據有哪些格式&#xff0c;這樣做的好處在與能針對不同的數據類型采取不同分方法手段。 一、XML XML&#xff08;Extensible Markup Language&#xff09;是一種可擴展的標記語言&#xff0c;它定義了一套標…

如何解決幻獸帕魯/Palworld服務器聯機游戲時的丟包問題?

如何解決幻獸帕魯/Palworld服務器聯機游戲時的丟包問題&#xff1f; 等待服務器維護&#xff1a;首先&#xff0c;確保網絡連接穩定&#xff0c;然后查看游戲官方或社區論壇&#xff0c;了解是否有服務器維護的消息。這是解決丟包問題的一種直接且有效的方法。 更新顯卡驅動&a…

Siemens-NXUG二次開發-獲取prt中體與類型、實體面與類型、實體邊與類型、邊上點的Tag標識[Python UF][20240302]

Siemens-NXUG二次開發-獲取prt中體與類型、實體面與類型、實體邊與類型、邊上點的Tag標識[Python UF][20240302] 1.python uf函數1.1 NXOpen.UF.Obj.CycleObjsInPart1.2 NXOpen.UF.Obj.AskTypeAndSubtype1.3 NXOpen.UF.Modeling.AskBodyFaces1.4 NXOpen.UF.Modeling.AskFaceEdg…

RISC-V特權架構 - 機器模式下的異常處理

RISC-V特權架構 - 機器模式下的異常處理 1 進入異常1.1 從mtvec 定義的PC 地址開始執行1.2 更新CSR 寄存器mcause1.3 更新CSR 寄存器mepc1.4 更新CSR 寄存器mtval1.5 更新CSR 寄存器mstatus 2 退出異常2.1 從mepc 定義的PC 地址開始執行2.2 更新CSR 寄存器mstatus 3 異常服務程…

Android Tombstone 分析

1.什么是tombstone Tombstone是指在分布式系統中用于標記數據已被刪除的記錄&#xff0c;通常包含刪除操作的時間戳和相關信息。 當一個動態庫&#xff08;native程序&#xff09;開始執行時&#xff0c;系統會注冊一些連接到 debuggerd 的signal handlers。當系統發生崩潰時…

wpa_supplicant與用戶態程序的交互分析

1 wpa_supplicant與用戶態程序wpa_cli的交互過程 1.1 交互接口類型 wpa_supplicant與用戶態程序交互的主要接口包括以下幾種&#xff1a; 1&#xff09;命令行界面&#xff1a;通過命令行工具 wpa_cli 可以與 wpa_supplicant 進行交互。wpa_cli 允許用戶執行各種 wpa_suppli…

Spark Shuffle Tracking 原理分析

Shuffle Tracking Shuffle Tracking 是 Spark 在沒有 ESS(External Shuffle Service)情況&#xff0c;并且開啟 Dynamic Allocation 的重要功能。如在 K8S 上運行 spark 沒有 ESS。本文檔所有的前提都是基于以上條件的。 如果開啟了 ESS&#xff0c;那么 Executor 計算完后&a…

MySQL 表的基本操作,結合項目的表自動初始化來講

有了數據庫以后&#xff0c;我們就可以在數據庫中對表進行增刪改查了&#xff0c;這也就意味著&#xff0c;一名真正的 CRUD Boy 即將到來&#xff08;&#x1f601;&#xff09;。 查表 查看當前數據庫中所有的表&#xff0c;使用 show tables; 命令 由于當前數據庫中還沒有…

基于Python3的數據結構與算法 - 09 希爾排序

一、引入 希爾排序是一種分組插入排序的算法。 二、排序思路 首先取一個整數d1 n/2&#xff0c;將元素分為d1個組&#xff0c;每組相鄰量取元素距離為d1&#xff0c;在各組內直接進行插入排序&#xff1b;取第二個整數d2 d1/2&#xff0c; 重復上述分組排序過程&#xff0…

Angular 2 中的樣式綁定和 NgStyle

在 Angular 2 模板中綁定內聯樣式很容易。以下是一個綁定單個樣式值的示例&#xff1a; 你還可以指定單位&#xff0c;例如在這里我們將單位設置為 em&#xff0c;但也可以使用 px、% 或 rem&#xff1a; <p [style.font-size.em]"3">A paragraph at 3em! &l…

CSS 自測題 -- 用 flex 布局繪制骰子(一、二、三【含斜三點】、四、五、六點)

一點 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>css flex布局-畫骰子</title><sty…

vue3 滾動條觸底監聽

問題&#xff1a;指定區域內&#xff0c;顯示返回的數據&#xff0c;要求先顯示20條&#xff0c;區域超出部分滾動顯示&#xff0c;對滾動條進行監聽&#xff0c;滾動條觸底后&#xff0c;繼續顯示下20條... 解決過程&#xff1a; 1.在區域的div上&#xff0c;添加scroll事件…

Unity 切換場景

場景切換前必須要將場景拖動到Build中 同步加載場景 using System.Collections; using System.Collections.Generic; //using UnityEditor.SearchService; using UnityEngine; // 場景管理 需要導入該類 using UnityEngine.SceneManagement;public class c3 : MonoBehaviour {…

redis五大基礎類型【重點】

之前寫過一點小知識&#xff1a;https://blog.csdn.net/qq_45927881/article/details/134959181?spm1001.2014.3001.5501 參考鏈接 https://xiaolincoding.com/redis/data_struct/command.html#%E4%BB%8B%E7%BB%8D 目錄 1. string&#xff08;字符串&#xff09;2. Hash&#…

MySql安全加固:配置不同用戶不同賬號禁止使用舊密碼禁止MySql進程管理員權限

MySql安全加固&#xff1a;配置不同用戶不同賬號&禁止使用舊密碼&禁止MySql進程管理員權限 1.1 檢查是否配置不同用戶不同賬號1.2 檢查是否禁止使用舊密碼1.3 禁止MySql進程管理員權限 &#x1f496;The Begin&#x1f496;點點關注&#xff0c;收藏不迷路&#x1f496…

【c++】通訊錄管理系統

1.系統功能介紹及展示 2.創建項目 3.菜單實現 4.退出功能實現 5.添加聯系人—結構體設計 6.添加聯系人—功能實現 7.顯示聯系人 8.刪除練習人—檢測聯系人是否存在 9.刪除聯系人—功能實現 10.查找聯系人 11.修改聯系人 12.清空通訊錄 #include <iostream> #include <…