杏z学習帳

Swift、Unityなどを中心に節操なく手を出してますまる

3D Touch Shortcuts のメニューの並びについて(2019/01/29)

[Swift]3D Touch Shortcuts のメニューの並びについて

ざっくりまとめ。

です。

環境

表示されるメニューの並びが違う?

3D Touch による起動ショートカットを実装したときに気になったのだけれど
表示されるメニューの並びが端末によってちがう?
(最初は実機とシミュレータでちがう?とも思ったりもしました)

info.plist

<key>UIApplicationShortcutItems</key>
<array>
    <dict>
        <key>UIApplicationShortcutItemType</key>
        <string>xyz.factory.shortcut.add</string>
        <key>UIApplicationShortcutItemTitle</key>
        <string>Add</string>
        <key>UIApplicationShortcutItemIconType</key>
        <string>UIApplicationShortcutIconTypeAdd</string>
    </dict>
    <dict>
        <key>UIApplicationShortcutItemType</key>
        <string>xyz.factory.shortcut.search</string>
        <key>UIApplicationShortcutItemTitle</key>
        <string>Search</string>
        <key>UIApplicationShortcutItemIconType</key>
        <string>UIApplicationShortcutIconTypeSearch</string>
    </dict>
</array>

こういう感じで設定していて、上から Add, Search と記述しているので、
表示されるメニューもその並びでくるとおもっていたのだけれど...。

shortcut menu

これは想定している通りだけれど

shortcut menu

これは違う。
当初は実機とシミュレータで確認して差異があったので、
まさか実機とシミュレータで挙動が違うやつかな?とか思ったりもしました。

多分対象アプリのアイコンがどこに有るかが重要

画面の上半分に対象アプリのアイコンがあるのか、下半分にあるのか...
多分それで表示されるメニューの並びが違うっぽいです。

info.plist で指定した並び順になるにはなるけど、
アプリアイコンがどこにあるかで、始点がかわるような感じでしょうか。

上から下に並ぶ時は上半分にあるとき。
下から上に並ぶときは下半分んいあるとき。
ということっぽいです。
アプリアイコンからメニューの端へと並ぶっていう感じでしょうか。。

これに遭遇したときは、まったくしらなかったので、
端末によって違うのかとか、まさかのランダム!?とか思ったりもしてちょっと焦りました(笑)