Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SwiftUIをUIKitのライフサイクルで拡張するTips

 SwiftUIをUIKitのライフサイクルで拡張するTips

6500a96a5f0786d7ff0c53429d691ae6?s=128

kazuhiro4949

June 06, 2022
Tweet

More Decks by kazuhiro4949

Other Decks in Technology

Transcript

  1. ,B[VIJSP)BZBTIJ !LB[VIJSP 4XJGU6*Λ6*,JUͷϥΠϑαΠΫ ϧͰ֦ு͢Δ5JQT 88%$&YUFOEFE5PLZP

  2. ֓ཁ w 4XJGU6*͸ػೳ͕଍Γͳ͍ w ଍Γͳ͍ػೳΛ6*,JUͷϥΠϑαΠΫϧͰ֦ு w 7$Λ׆༻͢ΔΑ͘࢖͍ͬͯΔύλʔϯͷҰͭ঺հ

  3. 4XJGU6*ͷ7JFX͕࣋ͭ CBDLHSPVOE ʹ7$Λ഑ஔ ࠓ೔࿩͢͜ͱ

  4. ࠓ೔࿩͢͜ͱ w CBDLHSPVOE ʹ7$Λ഑ஔύλʔϯ w ࣄྫ঺հ w ΧελϜϞʔμϧ w ϥΠϑαΠΫϧΛर͏

    w 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ύϥϝʔλΛ࢖͏
  5. ΧελϜϞʔμϧ

  6. ΧελϜϞʔμϧ w J04ϋʔϑϞʔμϧ w 5FYU'JFME෇͖Ξϥʔτ w ϞʔμϧΛ࢖ͬͨಠࣗτϥϯδγϣϯ

  7. ΧελϜϞʔμϧ σϞ

  8. ΧελϜϞʔμϧ 7JFXͷ࣮૷

  9. ΧελϜϞʔμϧ όοΫάϥ΢ϯυʹ6*7JFX$POUSPMMFS3FQSFTFOUBCMFΛ഑ஔ

  10. ΧελϜϞʔμϧ 6*7JFX$POUSPMMFS3FQSFTFOUBCMFͷ࣮૷

  11. ΧελϜϞʔμϧ 6*7JFX$POUSPMMFSΛॳظԽͯ͠ฦ͚ͩ͢

  12. ΧελϜϞʔμϧ VQEBUFͷ࣮૷

  13. ΧελϜϞʔμϧ 7JFX#VJMEFS͔Β7JFXΛੜ੒ͯ͠)PTUJOH$POUSPMMFSʹϥοϓ͠QSFTFOU

  14. ΧελϜϞʔμϧ !#JOEJOHͷϑϥάͰ֎෦͔ΒQSFTFOUͱEJTNJTTΛ؅ཧ

  15. ͜ͷύλʔϯͷߏ੒ 6*7JFX$POUSPMMFS3FQSFTFOUBCMF 4XJGU6*ͷ7JFXͷCBDLHSPVOE 6*7JFX$POUSPMMFS ϞʔμϧͰද͍ࣔͨ͠4XJGU6*ͷ7JFX ηοτ͢Δ ϥοϓ͢Δ Ϟʔμϧදࣔ

  16. ΧελϜϞʔμϧ ΑΓ4XJGU6*ͬΆ͘ݟͤΔͱͨ͠Β͜Μͳײ͡Ͱ࣮૷Ͱ͖Δͱྑ͍

  17. ΧελϜϞʔμϧ 7JFX.PEJ fi FSΛ࡞ͬͯɺCBDLHSPVOE΁7$ηοτ͢Δॲཧͷϥοϓ

  18. ΧελϜϞʔμϧ ϝιουͷத਎͸ΧελϜ7JFX.PEJ fi FSద༻ͷϥοϓ

  19. ϥΠϑαΠΫϧΛर͏

  20. ϥΠϑαΠΫϧΛर͏ w ಉ͘͡4XJGU6*7JFXͷCBDLHSPVOEʹ7$Λ഑ஔ w ͦͷ7JFXʹ࿈ಈͯ͠7$ͷϥΠϑαΠΫϧ͕ݺ͹ΕΔ

  21. σϞ ϥΠϑαΠΫϧΛर͏

  22. ϥΠϑαΠΫϧΛर͏ CBDLHSPVOE΁6*7JFX$POUSPMMFS3FQSFTFOUBCMFηοτ͢Δ

  23. ϥΠϑαΠΫϧΛर͏ த਎ͱͯ͠͸ઐ༻ͷ7$Λ࡞ͬͯฦ͢ɻVQEBUFͰ͸Կ΋͠ͳ͍

  24. ϥΠϑαΠΫϧΛर͏ 7$ͷ֤ϥΠϑαΠΫϧΠϕϯτͰ࣮૷

  25. 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ ύϥϝʔλΛ࢖͏

  26. 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ϓϩύςΟ w 7$͸͕࣋ͭ4XJGU6*ͷ&OWJSPONFOUʹͳ͍৘ใ w ׂͱ͋Δ

  27. 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ϓϩύςΟ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOVJLJUVJWJFX

  28. 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ϓϩύςΟ IUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPOVJLJUVJWJFX

  29. 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ϓϩύςΟ w 6*,JUͰ͸ʮಡΈ΍͍͢෯ʯͱ͍͏֓೦͕͋Δ͕ɺ4XJGU6*ʹ͸ͳ͍ w ಋೖ͢ΔͨΊʹ4XJGU6*Λ6*,JUͷϥΠϑαΠΫϧͰ֦ு͢Δ

  30. σϞ 7$ͷϥΠϑαΠΫϧʹґଘͨ͠ϓϩύςΟ

  31. ݺͼग़͠ͷྲྀΕ ݺͼग़͠ 7JFXͷFYUFOTJPOͰ࣮૷ͨ͠ϝιου ΧελϜ7JFX.PEJ fi FSPSϥούʔ7JFX 6*7JFX$POUSPMMFS3FQSFTFOUBCMF ϥΠϑαΠΫϧ༻7$ ϥοϓ͢Δ CBDLHSPVOEʹηοτ͢Δ

    ϥοϓ͢Δ 4XJGU6*ͷ7JFX
  32. ·ͱΊ w CBDLHSPVOE 6*7JFX$POUSPMMFS3FQSFTFOUBCMFͰ7$ͷϥΠϑαΠΫϧΛ ࢖ͬͨ7JFX֦ு͕Ͱ͖Δ w CBDLHSPVOE PWFSMBZ ͸6*ؔ࿈ͷݟ͑ͳ͍ॲཧ΍ؒ઀ॲཧʹ࢖͑Δ w

    (FPNFUSZ3FBEFS 1SFGFSFODFΛઃஔܑͯ͠ఋؒͷ࠲ඪͷ΍ΓͱΓͳͲ
  33. αϯϓϧίʔυ w IUUQTHJUIVCDPNLB[VIJSP4XJGU6*BOE6*,JU*OUFSBDUJPO