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

wwdc19

 wwdc19

Shigure Shimotori

June 25, 2019
Tweet

More Decks by Shigure Shimotori

Other Decks in Programming

Transcript

  1. ͸͡ΊͯͷWWDC
    WWDC19 Recap at LINE

    View Slide

  2. ͸͡ΊͯͷWWDC
    @S_Shimotori_pub
    ▸ LINE.appͷUI·ΘΓ
    ▸ iOSDCωοτϫʔΫελοϑ
    ▸ DroidKaigiӡӦελοϑ
    ▸ WWDCॳࢀՃ

    View Slide

  3. ͸͡ΊͯͷWWDC
    ࠓ೔࿩͢͜ͱ
    ▸ ࢀՃऀ਺ઍਓͱ͸
    ▸ ϥϘͰฉ͍͖ͯͨ͜ͱ
    ▸ ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ
    ▸ λΠจࣈ໰୊;ͨͨͼ
    ▸ μʔΫϞʔυରԠɺ։ນ

    View Slide

  4. ࢀՃऀ਺ઍਓͱ͸

    View Slide

  5. ࢀՃऀ਺ઍਓͱ͸
    WWDCʹॳࢀՃͯ͠Θ͔ͬͨ͜ͱ
    ▸ ᷚ௨Γͷςϯγϣϯͷߴ͞
    ▸ ௕ظઓʹ༏͍͠Ռ෺ͱOdwalla
    ▸ /16ͰIPΞυϨεେ൫ৼΔ෣͍
    ▸ ަ௨खஈ͕ͱͯ΋ͭΒ͍
    ▸ ಥવͷ৽ཁૉൃදͰ্खʹϥϘΛ׆༻Ͱ͖ͳ͍
    ▸ ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ

    View Slide

  6. ࢀՃऀ਺ઍਓͱ͸
    WWDCʹॳࢀՃͯ͠Θ͔ͬͨ͜ͱ
    ▸ ᷚ௨Γͷςϯγϣϯͷߴ͞
    ▸ ௕ظઓʹ༏͍͠Ռ෺ͱOdwalla
    ▸ /16ͰIPΞυϨεେ൫ৼΔ෣͍
    ▸ ަ௨खஈ͕ͱͯ΋ͭΒ͍
    ▸ ಥવͷ৽ཁૉൃදͰ্खʹϥϘΛ׆༻Ͱ͖ͳ͍
    ▸ ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ

    View Slide

  7. ࢀՃऀ਺ઍਓͱ͸
    ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ
    ▸ ൺ཰Ͱߟ͑Δͱଟ͍ͱ͸ݴ͑ͳ͍
    ▸ ࢀՃऀ͕਺ઍਓ͍ΔͷͰਓ਺ࣗମ͸ଟ͘ײ͡ΒΕΔ
    ▸ Ҋ಺൘΍࠵͠෺Ͱଘࡏʹؾ͔ͮ͞ΕΔ

    View Slide

  8. View Slide

  9. View Slide

  10. ϥϘͰ

    ฉ͍͖ͯͨ͜ͱ

    View Slide

  11. ϥϘͰฉ͍͖ͯͨ͜ͱ
    Ͳ͜ͷϥϘʁ
    ▸ ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ

    ˠAccessibility Design Lab
    ▸ λΠจࣈ໰୊;ͨͨͼ

    ˠText Lab
    ▸ μʔΫϞʔυରԠɺ։ນ

    ˠUIKit Lab

    View Slide

  12. ΞΫηγϏϦςΟ

    Ͳ͏ͨ͠Β͍͍ͷ

    View Slide

  13. View Slide

  14. ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ
    ରԠ΍࣮૷ʹࠔΔྫ
    ▸ ʮ14:30ʯͷ೔ຊޠಡΈ্͕͓͔͍͛͠
    ▸ ಠࣗʹʮ͡Ύ͏Α͡͞Μͬ͡΀Μʯͱಡ·͍͍ͤͯʁ
    ▸ ࢒ߴ΍ޱ࠲൪߸ͳͲͷݸਓ৘ใ
    ▸ ಡΈ্͍͍͛ͤͯ͞ͷʁ

    View Slide

  15. ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ
    ΞΫηγϏϦςΟରԠͰࠔͬͨΒ
    ▸ Appleͷ࡞ͬͨΞϓϦͷ࣮૷ʹ฿͏
    ▸ উखʹ௚͞ͳ͍Ͱόάใࠂ͚ͩ͢Δͱ͔
    ▸ Apple PayͷΫϨΧಡΈ্͛Λਅࣅ͢Δͱ͔

    View Slide

  16. λΠจࣈ໰୊
    ;ͨͨͼ

    View Slide

  17. ▸ λΠจࣈ͸ॎʹ௕͍ͷͰ༉அ͢Δͱ͸Έग़ͪΌ͏ʂ
    λΠจࣈ໰୊;ͨͨͼ
    λΠจࣈ໰୊ͱ͸
    ೔ຊ Japan ประเทศญี่ปุ่น

    View Slide

  18. λΠจࣈ໰୊;ͨͨͼ
    λΠจࣈͷߴ͞Λ஌Γ͍ͨʂ
    ▸ UIKitͷྗͰ͸จࣈͷ࣮αΠζΛऔಘ͢Δ͜ͱ͕Ͱ͖ͳ͍

    View Slide

  19. λΠจࣈ໰୊;ͨͨͼ
    จࣈͷେ͖͞ʢਅʣΛௐ΂Δ
    ▸ Core TextΛ࢖͑͹ਖ਼֬ͳେ͖͕͞Θ͔Δ
    let word = "ประเทศญี่ปุ่น"

    let attributedString = NSAttributedString(string: word)

    let line = CTLineCreateWithAttributedString(attributedString)

    let rect = CTLineGetBoundsWithOptions(line, .useGlyphPathBounds)

    View Slide

  20. λΠจࣈ໰୊;ͨͨͼ
    λΠจࣈ໰୊;ͨͨͼ - vs Swift UI Text
    ▸ clip͞Εͨɺͩͱ……ʁʁ

    View Slide

  21. μʔΫϞʔυରԠɺ։ນ

    View Slide

  22. μʔΫϞʔυରԠɺ։ນ
    ҰൠతͳʁμʔΫϞʔυରԠ
    ▸ Assetʹొ࿥͢Ε͹ࣗಈͰ࢖͍෼͚ͯ͘ΕΔΑ
    ▸ System color΍Semantic colorͰҰൃରԠͩΑ

    View Slide

  23. View Slide

  24. μʔΫϞʔυରԠɺ։ນ
    LINE.appͷμʔΫϞʔυରԠ
    ▸ Assetʹొ࿥͢Ε͹ࣗಈͰ࢖͍෼͚ͯ͘ΕΔΑ

    →ొ࿥͠·ͤΜͰ͖·ͤΜ
    ▸ System color΍Semantic colorͰҰൃରԠͩΑ

    →࢖͍·ͤΜͰ͖·ͤΜ

    View Slide

  25. μʔΫϞʔυରԠɺ։ນ
    AssetΛ࢖Θͣʹdynamicͳ΋ͷΛͭ͘Δ
    ▸ Dynamic color
    ▸ UIColor.init(dynamicProvider:)

    ▸ Dynamic image
    ▸ ͋Εʁઆ໌͞Ε͚ͯͨͬʁ

    View Slide

  26. μʔΫϞʔυରԠɺ։ນ
    dynamic imageͷͭ͘Γ͔ͨ
    ▸ UIImageAssetΛ࡞Ε͹͍͚Δʂ
    let imageAsset = UIImageAsset()

    imageAsset.register(lightImage, with: lightTraitCollection)

    imageAsset.register(darkImage, with: darkTraitCollection)

    let image = imageAsset.image(with: UITraitCollection.current)

    View Slide

  27. ·ͱΊʁ

    View Slide

  28. ·ͱΊʂ
    WWDC͸͜Μͳͱ͜Ζ
    ▸ ੈքதͷ։ൃऀͱձ͑Δ
    ▸ ࣗ෼ͷ࣮ྗ͕ϥϘͷ׆༻۩߹ʹग़ͪΌ͏
    ▸ ظ͕ؒ୹͍ͷͰؤுΓ·͠ΐ͏

    View Slide