Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOSアプリのレイアウトを回転で変更するとき注意していること
Search
kazuhiro4949
December 28, 2018
Technology
0
760
iOSアプリのレイアウトを回転で変更するとき注意していること
Nagoya iOS meetup vol. 5
https://nagoya-ios-meetup.connpass.com/event/110046/
kazuhiro4949
December 28, 2018
Tweet
Share
More Decks by kazuhiro4949
See All by kazuhiro4949
SwiftUIをUIKitのライフサイクルで拡張するTips
kazuhiro4949
4
2.8k
iOS15でプッシュ通知のテストが大変だった話
kazuhiro4949
0
620
Source Editor Extensionと SwiftSyntaxでコード自動生成ツール を作る
kazuhiro4949
2
4.3k
iOS 12サポート終了で使えるAPIおさらい
kazuhiro4949
2
370
Source Editor ExtensionとSwiftSyntaxでコード自動生成
kazuhiro4949
0
110
大企業の最前線でコードを書き続けるためにやってきたこと
kazuhiro4949
28
19k
10分で振り返るここ数年のWWDCの技術トレンド
kazuhiro4949
0
320
コードを書きながら同時に設計していくためのiOSアプリ開発方針
kazuhiro4949
6
2.6k
身近な技術的課題から始めるOSSプロジェクト
kazuhiro4949
0
330
Other Decks in Technology
See All in Technology
AIと融ける人間の冒険
pujisi
0
110
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
410
投資戦略を量産せよ 2 - マケデコセミナー(2025/12/26)
gamella
1
610
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
420
BidiAgent と Nova 2 Sonic から考える音声 AI について
yama3133
2
150
Introduction to Bill One Development Engineer
sansan33
PRO
0
340
迷わない!AI×MCP連携のリファレンスアーキテクチャ完全ガイド
cdataj
0
250
Digitization部 紹介資料
sansan33
PRO
1
6.4k
モノタロウ x クリエーションラインで実現する チームトポロジーにおける プラットフォームチーム・ ストリームアラインドチームの 効果的なコラボレーション
creationline
0
440
Bedrock AgentCore Evaluationsで学ぶLLM as a judge入門
shichijoyuhi
2
320
202512_AIoT.pdf
iotcomjpadmin
0
180
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
110
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.3k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
410
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Automating Front-end Workflow
addyosmani
1371
200k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.3k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
37
Faster Mobile Websites
deanohume
310
31k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
29
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Transcript
J04ΞϓϦͷϨΠΞτΛճసͰ มߋ͢Δͱ͖ҙ͍ͯ͠Δ͜ͱ ,B[VIJSP)BZBTIJ /BHPZBJ04NFFUVQWPM
ࣗݾհ wྛ߂ w5XJUUFSɿLB[VIJSP wHJUIVCɿLB[VIJSP wRJJUBɿLB[VIJSP w:BIPP+BQBO$PSQ wJ04ΞϓϦΤϯδχΞ wJ04ΞϓϦࠇଳ
ΞυΧϨͰॻ͍ͨΛ͠·͢ IUUQTRJJUBDPNLB[VIJSPJUFNTEGGGCBFE
ΞδΣϯμ ճసڐՄͷઃఆ ϨΠΞτมߋΛߦ͏λΠϛϯά ճసͷڧ੍ ಈ࡞֬ೝ
ճసڐՄͷઃఆ
ճసڐՄͷઃఆ J1IPOFɾJ1BEͰڞ௨ͷ߹ϓϩδΣΫτϑΝΠϧ J1IPOFɾJ1BEͰม͑Δ߹*OGPQMJTU ը໘ຖʹࡉ͔͘ม͍͑ͨ߹"QQ%FMFHBUF͔7$ J1IPOF9Ͱ6QTJEF%PXOͰ͖ͳ͍
J1IPOFɾJ1BEͰڞ௨ͷ߹ ϓϩδΣΫτϑΝΠϧ
J1IPOFɾJ1BEͰڞ௨ͷ߹ ϓϩδΣΫτϑΝΠϧ
J1IPOFɾJ1BEͰڞ௨ͷ߹ ϓϩδΣΫτϑΝΠϧ
J1IPOFɾJ1BEͰม͑Δ߹ *OGPQMJTU J1BE J1IPOF
ը໘͝ͱʹࡉ͔͘ม͍͑ͨ ߹"QQ%FMFHBUF͔7$ "QQ%FMFHBUFͰͷ࣮ func application(_ application: UIApplication, supportedInterfaceOrientationsFor window: UIWindow?)
-> UIInterfaceOrientationMask { return .all }
ը໘͝ͱʹࡉ͔͘ม͍͑ͨ ߹"QQ%FMFHBUF͔7$ 7$Ͱͷ࣮ override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return .all
}
J1IPOF9ܥͩͱγεςϜͷઃఆ ͱͯ͠6QTJEF%PXO͕͖͔ͳ͍ w J1IPOF9ܥͰཪฦͨ͠߹ͷճస σόΠεϨϕϧͰޮ͔ͳ͍Α͏ʹͳͬ ͍ͯΔ
ϨΠΞτมߋΛ ߦ͏λΠϛϯά
ϨΠΞτมߋΛ ߦ͏λΠϛϯά override func viewWillTransition(to size: CGSize, with coordinator: UIViewControllerTransitionCoordinator)
{ super.viewWillTransition(to: size, with: coordinator) coordinator.animate(alongsideTransition: { _ in if size.width > size.height { // ϨΠΞτมߋॲཧΛॻ͘ } else { // ... } }, completion: nil) } 6*7JFX$POUSPMMFSͷ"1*
ϨΠΞτมߋΛ ߦ͏λΠϛϯά w ઌఔͷճసΠϕϯτճస͢Δͱଈ࠲ʹݺΕΔ w 7$͕લ໘ʹ͍ͳ͍߹ɺճసͯ͠ଈ࠲ʹMBZPVU4VCWJFXT ͳͲݺΕ ͳ͍ w ճసޙͷϨΠΞτΛఆͨ͠ܭࢉΛ͜͜ॻ͍ͯ͠·͏ͱ่ΕΔ
w ϨΠΞτॲཧϨΠΞτΠϕϯτͰ࣮ͨ͠΄͏͕͍͍
ճసͷڧ੍
ճసͷڧ੍ w σόΠεͷճసΛڲਖ਼͢Δ"1*ͳ͍ w 7$͝ͱͷճసΛٖͬͯࣅతʹߦ͏
ճసͷڧ੍ override var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { return .landscapeRight } 6*7JFX$POUSPMMFSͷ"1*
͜ΕͰϞʔμϧ͕දࣔ͞ΕΔํΛܾΊΒΕΔɻ ͜ͷઃఆͩͱɺࠨ͔Βӈʹ͔ͬͯϞʔμϧ͕಄Λग़ͯ͘͠Δ
ճసͷڧ੍ 6*7JFX$POUSPMMFSͷ"1* ͜ΕͰσόΠεΛճͯ͠7$-BOETDBQF3JHIUͷ··ʹͳΔ override var supportedInterfaceOrientations: UIInterfaceOrientationMask { return .landscapeRight
} override var shouldAutorotate: Bool { return false }
ճసͷڧ੍ w ը໘͕ճస͢ΔΑ͏ͳΧελϜτϥϯδγϣϯΛ࣮ w σόΠε͕ճస͍ͯ͠ΔΑ͏ʹݟͤΒΕΔ w /PUJpDBUJPO$FOUFSͰPSJFOUBUJPO%JE$IBOHF/PUJpDBUJPOΛࢹ w σόΠεͷճసʹ߹ΘͤͯϞʔμϧΛදࣔͤ͞ΒΕΔ
ճసͷڧ੍ UIDevice.current.setValue( UIInterfaceOrientation.landscapeRight.rawValue, forKey: “orientation” ) ΩʔίʔσΟϯάͰϓϥΠϕʔτ"1*Λୟ͚ σόΠεճస͕Ͱ͖Δ
ಈ࡞֬ೝ
ಈ࡞֬ೝ w ճస7$͕Ͳͷ֊ʹ͍࣮ͯߦ͞ΕΔ w ϨΠΞτ7$ͷ֊্ͷҐஔදࣔͷ͞ΕํͰ࣮ߦ͞Εͳ͍ࣄ͕͋Δ
ಈ࡞֬ೝ w ैͬͯɺલ໘ʹݟ͍͑ͯΔͱ͖ͷϨΠΞτ͚ͩ֬ೝ͢Ε͍͍Θ͚Ͱͳ͍ w φϏήʔγϣϯͷதʹӅΕ͍ͯΔͱ͖ͳͲͰճసͷϝιου͕ݺΕͨ߹ͷ ςετ͓͍ͯͨ͠΄͏͕͍͍
Ҏ্ɺͭͷ؍Ͱ·ͱΊͯΈ·ͨ͠ ճసڐՄͷઃఆ ϨΠΞτมߋΛߦ͏λΠϛϯά ճసͷڧ੍ ಈ࡞֬ೝ