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
アラートなどの割り込み表示を制御する
Search
yuki tamazawa
December 15, 2021
Programming
1
530
アラートなどの割り込み表示を制御する
https://github.com/srea/UIPresentCoordinator
yuki tamazawa
December 15, 2021
Tweet
Share
More Decks by yuki tamazawa
See All by yuki tamazawa
DMM.swift#1 Mergeable Libraryを試した
srea
1
620
DMM 次世代SDK開発チーム
srea
0
430
mablりましょう。
srea
0
970
OSSと私
srea
1
510
ソフトウェア品質を支える E2Eテストのパイプライン作り
srea
3
3.2k
Other Decks in Programming
See All in Programming
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
3
940
これだけは知っておきたいクラス設計の基礎知識 version 2
masuda220
PRO
24
6.4k
State of Namespace
tagomoris
4
1.6k
DataStoreをテストする
mkeeda
0
290
Thank you <💅>, What's the Next?
ahoxa
1
140
RubyKaigi Dev Meeting 2025
tenderlove
1
150
Do Dumb Things
mitsuhiko
0
440
監視 やばい
syossan27
1
290
Ruby's Line Breaks
yui_knk
2
1k
地域ITコミュニティの活性化とAWSに移行してみた話
yuukis
0
240
Vibe Codingをせずに Clineを使っている
watany
17
6.3k
The Implementations of Advanced LR Parser Algorithm
junk0612
1
310
Featured
See All Featured
Become a Pro
speakerdeck
PRO
27
5.3k
Unsuck your backbone
ammeep
670
57k
Optimising Largest Contentful Paint
csswizardry
36
3.2k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
Why Our Code Smells
bkeepers
PRO
336
57k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
The Pragmatic Product Professional
lauravandoore
33
6.5k
A Modern Web Designer's Workflow
chriscoyier
693
190k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.5k
Transcript
:VLJ5BNB[BXB%..J04.FFUVQ ΞϥʔτͳͲͷ ׂΓࠐΈදࣔΛ੍ޚ͢Δ -*'0͔Β'*'0
ࢲʹ͍ͭͯ w ۄᖒ༟و w (JU)VCTSFB w ϓϥοτϑΥʔϜࣄۀຊ෦ w %..ϙΠϯτΫϥϒ w
ೝূ4%, IUUQTTQFBLFSEFDLDPNTSFB
ׂΓࠐΈදࣔͱ
࣮ऀͷҙਤͳ͘ɺ Ϣʔβʔૢ࡞Λதஅͤͯ͞දࣔ͞ΕΔͷ
օ͞·ɺׂΓࠐ·ΕΔͷ͖Ͱ͔͢ʁ
ҙਤͤͣɺׂΓࠐΈ͕ൃੜ͍ͯ͠ͳ͍Ͱ͔͢ʁ
ΞϥʔτͳͲͷछྨʹ͍ͭͯ
ݖݶऔಘલͷత௨
৽ػೳ֫ಘ௨
৽ػೳͳͲࠂ͕Ͱ͖ΔαʔϏε͍͔ͭ͋͘Δ w 'JSFCBTF*O"QQ.FTTBHJOH w 3FQSP w ,"35& w '"/4)*1 w
FUDʜ
ͦͷଞ
ׂΓࠐΈදࣔͷͱ
w Ϣʔβʔߦ͓͏ͱ͍ͯͨ͠ࣄΛڧ੍తʹதஅͤͯ͞͠·͏ w ೖྗ్த࡞ۀ్தʹׂΓࠐ·Εͯ࡞ۀঢ়ଶ͕ফ͑Δ w %..ϙΠϯτΫϥϒͰɺ ΞϓϦىಈ࣌ʹॏͳΔέʔε͕͋Γ·ͨ͠ɻ ද͕ࣔॏͳΔ
දࣔʹࣦഊ͍ͯ͠Δ [Presentation] Attempt to present <UIAlertController> on <UIViewController> which is
already presenting <UIViewController>.
ߟྀ͕͍͠໘͕͋Δ ϥΠϒϥϦଆͰ੍ޚ͞Ε͍ͯΔ߹͋Δɻ ͨͩ͠ɺෳϥΠϒϥϦΛ͍ͬͯΔ߹ɺ ΞϓϦέʔγϣϯશମͰڠௐͨ͠ಈ࡞Λͤ͞ Δ͜ͱ࣮ऀʹҕͶΒΕΔɻ
"QQMFͷΨΠυϥΠϯΛ֬ೝ
.PEBMJUZ IUUQTEFWFMPQFSBQQMFDPNEFTJHOIVNBOJOUFSGBDFHVJEFMJOFTJPTBQQBSDIJUFDUVSFNPEBMJUZ w 6TFNPEBMJUZXIFOJUNBLFTTFOTF ϞʔμϧମݧɺਓʑΛݱࡏͷঢ়گ͔Βͤ͞ɺ ղআ͢ΔͨΊͷΞΫγϣϯΛඞཁͱ͢ΔͨΊɺ ໌֬ͳϝϦοτ͕͋Δ߹ʹͷΈ༻͢Δ͜ͱ͕ॏཁͰ͢ɻ w
3FTFSWFBMFSUTGPSEFMJWFSJOHFTTFOUJBMBOEJEFBMMZBDUJPOBCMFJOGPSNBUJPO ΞϥʔτݱࡏͷΤΫεϖϦΤϯεΛதஅ͠ɺ ղআ͢ΔͨΊʹλοϓ͕ඞཁͳͷͰɺ ਓʑ͕ͦͷதஅ͕ਖ਼ͳͷͰ͋Δͱײ͡Δ͜ͱ͕ॏཁͰ͢ɻ
"MFSUT IUUQTEFWFMPQFSBQQMFDPNEFTJHOIVNBOJOUFSGBDFHVJEFMJOFTJPTWJFXTBMFSUT w .JOJNJ[FBMFSUT 69Λ્͢ΔͨΊɺॏཁͳใΛఏڙ͢ΔࡍʹͷΈ༻͠ɺසΛ͘͢Δ͜ͱ͕ॏཁͰ͢ɻ
Ͳ͏ղܾ͢Δ͔ɻ
6*Λݟ͢ w දࣔλΠϛϯάɺදࣔํ๏ͷݟͯ͠ɺׂΓࠐ·ͳ͍Α͏ʹௐ͢Δ w μΠΞϩάදࣔΛΊͯίϯςϯπʹ༹͚ࠐ·ͤΔ w ࠜຊղܾΛࢦͤΔ͔
ׂΓࠐΈΛ੍͢Δ w දࣔͨ͘͠ͳ͍λΠϛϯάʹ੍ w ࠜຊղܾͰͳ͍͔͠Εͳ͍͕ɺॏͳΔݱղܾͰ͖ͦ͏
%..ϙΠϯτΫϥϒͰ Ͳ͏ղܾ͔ͨ͠
w Ϣʔβʔʹ͢Ͱʹఏ͍ࣔͯ͠ΔμΠΞϩάͳͲ͕͋ͬͨ߹ɺ දࣔΛػ͢ΔػߏΛҰ෦ը໘ʹಋೖͨ͠ɻ w 'JSFCBTF*O"QQ.FTTBHJOHͷදࣔ6*ΛΧελϚΠζ͍ͯͨͨ͠Ίɺ දࣔपΓΛࣗΒ࣮͢Δ͜ͱͰ͖ͨɻ w ؆қతͳରԠͰɺࣗΒද੍ࣔޚͰ͖ΔέʔεͷΈʹ༗ޮɻ
w ࣮ίʔυ̑̌ߦఔ ୯७ͳΩϡʔͷΈͰରԠͨ͠
ଞࣾࣄྫௐࠪ
"QQ4UPSFͰಉ༷ͷΛݟ͔͚Δ w εΫγϣషΕ·ͤΜ͕ɺ৭ʑݟ͚ͭ·ͨ͠ɻ w ଞͷΞϓϦͰྑ͋͘ΔࣄͳΒɺ ౿ΈࠐΜͰϑΥϩʔग़དྷͳ͍͔ݕ౼͠·ͨ͠
࣮ݧతʹ 044ϥΠϒϥϦΛ࡞
ϦϙδτϦʹ͍ͭͯ w (JU)VCͰެ։͍ͯ͠·͢ɻ w IUUQTHJUIVCDPNTSFB6*1SFTFOU$PPSEJOBUPS
ಛ w ΞϥʔτදࣔͳͲ-*'0ʢελοΫʣͰͳ͘ɺ'*'0ʢΩϡʔʣͰ੍ޚ w 6*"MFSU$POUSPMMFSҎ֎ͷΫϥεʹରԠ 6*8JOEPX w 4XJGU6*ΛҰ෦αϙʔτ w
֎෦ϥΠϒϥϦ੍ޚͰ͖ΔػߏΛ༻ҙ
3 2 -*'0ͱ'*'0 1 2 3 1 3 2
1 -*'0 4UBDL '*'0 2VFVF QSFTFOU
͍ํ खಈͷ߹ 6*,JU
͍ํ खಈͷ߹ 4XJGU6*
͍ํ ࣗಈͷ߹ ׂΓࠐΈΛ੍͢ΔରΫϥεΛఆٛ͢Δ ΞϓϦέʔγϣϯશମͷ੍ޚ͕Մೳ
͍ํ දࣔΛதஅɾ࠶։͢Δ߹
σϞ ̕ݸͷϘλϯΛԡԼ͠දࣔΛ2VFVFJOH͢Δɻ αεϖϯυΛղআͯ͠ɺॱʹॲཧΛ͍ͯ͘͠ɻ 2VFVFͷ ˞'JSFCBTF*O"QQ.FTTBHJOH2VFVFʹೖΕͯ·͢ɻ
ग़དྷΔ w ΩϡʔͰׂΓࠐΈΛ੍ޚ w 6*,JU4XJGU6*αϙʔτ w ׂΓࠐΈରͷՃ w 04੍ޚܥΞϥʔτ w
ϓογϡڐ w "55 w Ґஔใ ग़དྷͳ͍
෦࣮ʹ͍ͭͯ w ࠓճׂѪ͠·͢ɻ w (JU)VCʹެ։͍ͯ͠ΔͨΊɺͥͻࢼͯ͠Έ͍ͯͩ͘͞ɻ w 1VMM3FRVFTU*TTVFܴͰ͢ɻ w ʮ͜͏͍͏ϢʔεέʔεͰ͑ͦ͏ɺ͑ͳͦ͞͏ʂʯͳͲ͋Εੋඇڭ͑ͯ ͍ͩ͘͞ɻ
࠷ޙʹ💡 w ϥΠϒϥϦΛͬͨͱͯ͠ΞϥʔτͳͲͷଟ༻ਪ͠·ͤΜɻ w ݱঢ়ͷׂΓࠐΈ͕ɺ69্ͷݒ೦͔Ͳ͏͔அ͢Δͱ͜Ζ͔Β࢝Ίɺ ඞཁʹԠͯ͡ΨΠυϥΠϯʹԊͬͨඞཁ࠷ݶͷׂΓࠐΈΛߦ͍ɺ Ϣʔβʔͷૢ࡞ͷअຐΛ͠ͳ͍Α͏ઃܭ͠·͠ΐ͏ɻ
ׂΓࠐΈूத͢ΔͨΊʹཁͨ࣌ؒ͠ͱ ࠶ͼूத͢Δͷʹඞཁͳ࣌ؒΛୣ͍ͬͯ͘