$30 off During Our Annual Pro Sale. View Details »

First step of 3D touch

sonson
November 08, 2016

First step of 3D touch

sonson

November 08, 2016
Tweet

More Decks by sonson

Other Decks in Programming

Transcript

  1. How to show it.
    Tech.
    Yuichi Yoshida
    Researcher, DENSO IT Laboratory, Inc.
    #????
    @sonson_twit
    © 2014 DENSO IT Laboratory, Inc., All rights reserved. Redistribution or public display not permitted without written permission from DENSO IT Laboratory, Inc.
    First step of 3D touch

    View Slide

  2. ࣗݾ঺հ
    • sonson
    • twitter: sonson_twit
    • github: sonsongithub
    • portfolio
    • reddift(SwiftͰॻ͍ͨreddit.comͷAPIϥούʔ)
    • ࢓ࣄ
    • ը૾ೝࣝ/ݕࡧ/ͦΕΛ࢖ͬͨΞϓϦ
    • ػցֶशͷ͓ษڧͱ͔ॾʑͱ͔

    View Slide

  3. ͜ͷϘέͳ͍ྖҬͷઃఆʙμϝͳྫ

    View Slide

  4. ͜ͷϘέͳ͍ྖҬͷઃఆʙOK

    View Slide

  5. ͜ͷϘέͳ͍ྖҬͷઃఆʙҰ൪͍͍

    View Slide

  6. දࣔͷྲྀΕ
    • registerForPreviewingͰ४උ͢Δ
    • ͜͜Ͱ3D touchʹ൓Ԡ͢ΔviewΛઃఆ͢Δ
    • previewingContext(_:viewControllerForLocation:)
    • sourceRectΛઃఆ͢Δ
    • ্Ͱઃఆͨ͠viewͷ࠲ඪܥͰsourceRectΛηοτ

    View Slide

  7. registerForPreviewing

    View Slide

  8. previewingContext(_:viewControllerForLocation:)
    • Body

    View Slide

  9. previewingContext(_:viewControllerForLocation:)
    6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF
    6*7JFX$POUSPMMFS 7JFX

    View Slide

  10. previewingContext(_:viewControllerForLocation:)
    6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF
    6*7JFX$POUSPMMFS 7JFX
    %UPVDIൃੜ

    View Slide

  11. previewingContext(_:viewControllerForLocation:)
    6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF
    6*7JFX$POUSPMMFS 7JFX
    ͳΜ͔ίϯςϯπ͋Δʁ
    ίϯςϯπ

    View Slide

  12. previewingContext(_:viewControllerForLocation:)
    6*7JFX$POUSPMMFS1SFWJFXJOH%FMFHBUF
    6*7JFX$POUSPMMFS 7JFX
    6*7JFX$POUSPMMFS
    ͜ͷྖҬ͔Β
    ͜ͷ7JFX$POUSPMMFSΛදࣔͯ͠
    ίϯςϯπ

    View Slide

  13. previewingContext(_:viewControllerForLocation:)
    • Body

    View Slide

  14. previewingContext(_:viewControllerForLocation:)
    • Body

    View Slide

  15. previewingContext(_:viewControllerForLocation:)

    View Slide

  16. UIView.convert
    • ͋Δview͔Βݟͨɼ͋ΔviewͷrectΛܭࢉͯ͘͠ΕΔ
    • a.convert(rect:, to:b)
    • view a಺ͷrectΛview b͔Βݟͨrectʹม׵
    • a.convert(rect:, from:b)
    • view b಺ͷrectΛview a͔Βݟͨrectʹม׵
    • ఺΋͋Γ·͢
    • a.convert(point: to:b)
    • a.convert(point: from:b)

    View Slide

  17. UIView.convert
    f=(200,50,50,60)
    b
    a
    c

    View Slide

  18. UIView.convert
    f=(200,50,50,60)
    b
    a
    a.convert(f, from:c) => (800,80,50,60)
    c

    View Slide

  19. UIView.convert
    f=(200,50,50,60)
    b
    a
    c.convert(f, to:a) => (800,80,50,60)
    c

    View Slide

  20. Ԡ༻͢Δͱ

    View Slide

  21. previewingContext(_:viewControllerForLocation:)
    • Body

    View Slide

  22. αϯϓϧ
    • UZTextView
    • https://github.com/sonsongithub/UZTextView
    • developϒϥϯν

    View Slide

  23. 3D Touchͷςετ͸
    • ࣮ػ
    • Simulator

    View Slide

  24. ·ͱΊ
    • registerForPreviewingͰ४උ
    • viewΛొ࿥
    • previewingContext(_:viewControllerForLocation:)
    • view controllerΛ࡞੒
    • Ξχϝʔγϣϯ͍ͤͨ͞ྖҬΛܭࢉ
    • ฦ͢

    View Slide

  25. View Slide