UIApplicationShortcutItem 未显示基于 Info.plist [重复]
Posted
技术标签:
【中文标题】UIApplicationShortcutItem 未显示基于 Info.plist [重复]【英文标题】:UIApplicationShortcutItem not showing base on Info.plist [duplicate] 【发布时间】:2019-03-03 12:46:55 【问题描述】:我的 plist 中定义了 5 个项目。它只显示了 4 个。??????????♂️
我在Simulator
和实际 iPhone XS Max
中尝试过。
<array>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>home</string>
<key>UIApplicationShortcutItemTitle</key>
<string>Home</string>
<key>UIApplicationShortcutItemType</key>
<string>homePressed</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>security</string>
<key>UIApplicationShortcutItemTitle</key>
<string>Security</string>
<key>UIApplicationShortcutItemType</key>
<string>securityPressed</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>alert</string>
<key>UIApplicationShortcutItemTitle</key>
<string>Alert</string>
<key>UIApplicationShortcutItemType</key>
<string>alertPressed</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>network</string>
<key>UIApplicationShortcutItemTitle</key>
<string>Network</string>
<key>UIApplicationShortcutItemType</key>
<string>networkPressed</string>
</dict>
<dict>
<key>UIApplicationShortcutItemIconFile</key>
<string>settings</string>
<key>UIApplicationShortcutItemTitle</key>
<string>Settings</string>
<key>UIApplicationShortcutItemType</key>
<string>settingsPressed</string>
</dict>
</array>
结果
我做错了吗?
【问题讨论】:
两根手指,似乎不适用于模拟器和 iPhone。 你有没有机会使用 ios 9 ? 【参考方案1】:根据Apple:
当用户按下主屏幕应用程序图标时,系统会限制显示的快速操作的数量。在有限的一组显示的快速操作标题中,首先显示您的静态快速操作,从列表中的最顶部位置开始。如果您的静态项目未消耗允许的显示数量,并且您还使用此类定义了动态快速操作,则显示您的一个或多个动态快速操作。
也就是说,系统规定了显示的最大项目数,并选择您提供的前 n 个项目进行显示。
我找不到显示确切限制的任何地方,但我没有看到任何应用程序有超过 4 个项目 + “共享”项目。
【讨论】:
我会尝试将第 5 个添加为共享,看看我所看到的。【参考方案2】:我认为有四个项目的限制,查看documents
系统限制了用户显示的快速操作的数量 按下主屏幕应用程序图标。在有限的一组显示内 快速动作标题,您的静态快速动作首先显示, 从列表中的最高位置开始。如果你的静态项目 不消耗允许的显示数量,你也有 使用此类定义的动态快速操作,然后是一个或多个 显示您的动态快速操作。
更新讨论 关于分享项:
显然 iOS 会自动添加 SHARE 但仅当应用程序是 从应用商店安装。 – 京
这使它们成为四个 + 共享项,因为 AppStore 会自动在每个下载的应用程序上添加共享应用程序项
【讨论】:
我会尝试将第 5 个添加为共享,看看我所看到的。 某些应用显示 5 带有分享按钮。 分享通常显示为第五个 即使我们没有将它们包含在 Info.plist 中? 显然 iOS 会自动添加SHARE
,但前提是该应用是从 Appstore 安装的。以上是关于UIApplicationShortcutItem 未显示基于 Info.plist [重复]的主要内容,如果未能解决你的问题,请参考以下文章
从扩展更新 UIApplicationShortcutItem
UIApplicationShortcutItem 无需打开应用即可共享
从由 UIApplicationShortcutItem 触发的 AppDelegate 导航到 ViewController
UIApplicationShortcutItem 未显示基于 Info.plist [重复]
Swift 3 / Xcode 8 beta 6 中未调用 UIApplicationShortcutItem 的 AppDelegate 函数