技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2021 iThome 鐵人賽
DAY
20
0
Mobile Development
麻瓜學習 iOS 開發
系列 第
20
篇
Day20:SwiftUI—GeometryReader
13th鐵人賽
enolazxy
2021-10-05 23:52:05
792 瀏覽
分享至
前言
本篇文章介紹 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鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22206
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
請問內網IP如何轉外網IP?
新手學習編程,哪種編程語言好?
防火牆與DNS請教
硬盤只能在舊電腦上讀到 在新電腦上顯示不明硬盤
寫好了一個程式,想問打包成EXE的問題
FORTI 防火牆使用 RADIUS 認證問題請教
請問在ERP當中如何管理油漆、螺絲物料?
這樣的物件設計好嗎?
GPO密碼原則無法套用到domain controller
RAG 如何做得好?
熱門回答
請問內網IP如何轉外網IP?
這樣的物件設計好嗎?
防火牆與DNS請教
新手學習編程,哪種編程語言好?
Outlook 會跳出"插入智慧卡"(有安裝HiCOS卡片管理工具)
熱門文章
每日一篇學習筆記 直到我做完專題 :( [Day35]
每日一篇學習筆記 直到我做完專題 :( [Day36]
每日一篇學習筆記 直到我做完專題 :( [Day37]
每日一篇學習筆記 直到我做完專題 :( [Day38]
NYCU 電路學概論2 -112學年度
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}