技術問答
技術文章
iT 徵才
聊天室
2026 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2021 iThome 鐵人賽
DAY
20
0
Mobile Development
麻瓜學習 iOS 開發
系列 第
20
篇
Day20:SwiftUI—GeometryReader
13th鐵人賽
enolazxy
2021-10-05 23:52:05
1111 瀏覽
分享至
前言
本篇文章介紹 SwiftUI 的元件—GeometryReader。
實作
打開一個新專案
建立一個矩形:
這個矩形的位置是 hard code 出來的,
但我們的裝置很常不一樣,
所以我們需要一個相對的位置和框架大小。
加入 GeometryReader
這樣我們可以獲得整個屏幕的尺寸,
讓我們來相對的確定位置:
print 相應的 global 幾何坐標
print 相應的 local 幾何坐標
可以發現 global、local 數字不同。
因為 global 是指相對整個屏幕的坐標,
local 是指相對於其父級即這個 GeometryReader 的框架的坐標。
宣告兩個矩形
output 這兩個矩形的坐標:
會發現是相同的,
這是因為這兩個矩形都是相對同一個 GeometryReader 確定坐標的,
所以這個坐標是相對的而不是實際位置的坐標。
如果把這兩個矩形包在不同的 GeometryReader 裡:
則 output 出的坐標是不同的:
將多個元素直接放在 GeometryReader 是直接堆疊在一起的,類似 ZStack
創造重疊效果
刪除紅色矩形,並且修改兩個矩形長度:
添加 offset modifier:
出現重疊效果。
留言
追蹤
檢舉
上一篇
Day19:SwiftUI—Button
下一篇
Day21:開發自己的 APP 的前置步驟
系列文
麻瓜學習 iOS 開發
共
30
篇
目錄
RSS系列文
訂閱系列文
2
人訂閱
26
Day26:TabView
27
Day27:用 EnvironmentObject 傳遞數據
28
Day28:Update the Data and the Featured View
29
Day29: Picker controller
30
Day 30 : DetailView
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
19830
篇
完賽人數
528
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
17th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
趣味SQL,在資料庫查詢功能樹狀圖用畫線方式來表示(AI解題+再次修正線條符合版+註解說明)
趣味SQL 260301 來走迷宮
請推薦 虛擬主機 VPS,及Apache SSL 設定
Macbook OpenVPN Connect在外面無法連線
VMware vSphere 的 ESXi 主機憑證(Host CA/SSL Certificate)更新
Workflow ERP 料/工/費 問題:多階產品成本結構分析表
熱門回答
Workflow ERP 料/工/費 問題:多階產品成本結構分析表
請推薦 虛擬主機 VPS,及Apache SSL 設定
熱門文章
中華電信近期發生問題,MSA可以收信不能發信
這幾天好像用 Teams 傳圖,圖會看不見?
AI 軌道分離技術 vs. 傳統音訊處理:音樂創作者的效率革命
趣味SQL,在資料庫查詢功能樹狀圖用畫線方式來表示
[SRE×AI #08] Claude Skills 實戰:把你的 SRE 經驗變成一句指令
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}