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

API diffsからiOS10を妄想する

API diffsからiOS10を妄想する

Oasisさんで行われた"iOS Creators' Meetup vol.1" http://oi-study.connpass.com/event/32826/ に参加してきました

Yutaro Muta

June 30, 2016
Tweet

More Decks by Yutaro Muta

Other Decks in Technology

Transcript

  1. ͓લ୭Αʁ • ໂా ༟ଠ࿠ (@yutailang0119) • iOS App Developer •

    ΞϥΠυΞʔΩςΫπ, Inc.ɺ৽ଔ2೥໨ • iOSྺ10ϲ݄ڧ(Objective-C : Swift = 9 : 1)
  2. 1. Interests, InterestsUI • SiriͱMapsʹؔΘΔFramework (SiriKit) • Ͱ͖Δ͜ͱ͸ి࿩ֻ͚ͨΓɺϝοηʔδૹͬͨΓ (Intents Domain

    6ͭ) • ಛఆͷޠኮΛొ࿥ͯ͠ɺSiriʹೝࣝͤ͞Δ͜ͱ΋Մ ೳ • (࡞Δ࣌ʹ࿩͔͚͠Δͷஏ͔͍ͣ͠)
  3. Intents Domain • Audio or video calling • Messaging •

    Payments • Searching photos • Workouts • Ride Booking @mo_to_44͞ΜͷεϥΠυ͕ৄ͍͠ͷͰͪ͜ΒΛ https://speakerdeck.com/mnat44/sirikit
  4. 2. UserNotifications, UserNotificationsUI • ௨஌ڐՄ͞Εͨ͜ͱΛCallBackϋϯυϧͰ͖ ΔΑ͏ʹͳΔʂʂʂ => ѻ͍΍͘͢ͳͬͨʂʂʂʂ UNUserNotificationCenter.current().requestAuthorization([.alert, .so

    und, .badge]) { (granted, error) in if granted == true { //ڐՄ͞Ε͍ͯΔ } else { //ڐՄ͞Ε͍ͯͳ͍ } } //ࠓͷઃఆঢ়ଶͷऔಘ΋Ͱ͖Δ UNUserNotificationCenter.current().getNotificationSettings { (settings) in }
  5. 2. UserNotifications, UserNotificationsUI • ϑΥΞάϥ΢ϯυͰ΋௨஌ΛදࣔͰ͖ΔΑ͏ ʹͳΔʂʂʂ => ಠࣗͷΞϥʔτग़͞ͳͯ͘ࡁΉ func userNotificationCenter(_

    center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler handlerBlock: (UNNotificationPresentationOptions) -> Void) { //Roll banner and sound alert handlerBlock([.alert, .sound]) } ※ ศརͳ൒໘ɺPush͔ΒͷભҠʹΑͬͯɺͦΕ·Ͱͷϑϩʔ่͕յ͢ΔՄೳੑ͕͋ΔͷͰɺे෼ ͳߟྀ͕ඞཁ
  6. جຊͷ࢖͍ํ let timing = UICubicTimingParameters(animationCurve: .easeInOut) let animator = UIViewPropertyAnimator(duration:

    2.0, timingParameters: timing) animator.addAnimations { //Ξχϝʔγϣϯͷऴ఺Λఆٛ } animator.addCompletion {_ in //Ξχϝʔγϣϯऴྃ࣌ͷॲཧ } animator.startAnimation()
  7. جຊͷ࢖͍ํ let timing = UICubicTimingParameters(animationCurve: .easeInOut) let animator = UIViewPropertyAnimator(duration:

    2.0, timingParameters: timing) animator.addAnimations { //Ξχϝʔγϣϯͷऴ఺Λఆٛ } animator.addCompletion {_ in //Ξχϝʔγϣϯऴྃ࣌ͷॲཧ } animator.startAnimation()
  8. Ξχϝʔγϣϯϑϩʔ animator.startAnimation() //ελʔτ ->ɹstatus: active animator.pauseAnimation() //ϙʔζ -> status: active

    animator.stopAnimation(_ withoutFinishing: Bool) //ετοϓ /* withoutFinishing: ture -> status: inactive false -> status: stopped */ animator.finishAnimation(at: UIViewAnimatingPosition) //ऴྃ /* status: inactive at: .end: Ξχϝʔγϣϯͷऴྃ఺ .start: Ξχϝʔγϣϯͷ։࢝఺ .current: ࠓͷ஍఺ */
  9. • νϡʔτϦΞϧ: 9/20 • ΧϯϑΝϨϯε: 9/21-22 • εϓϦϯτ: 9/23-24 νέοτ:

    http://pyconjp.connpass.com/event/30692/ PyCon JP 2016։࠵֓ཁ