标签栏图标大小

时间:2018-03-26 13:06:36

标签: ios uikit uitabbarcontroller uitabbaritem

Apple says

  

根据设备和方向,系统会显示常规或紧凑的标签栏。您的应用应包含两种尺寸的自定义标签栏图标。

不幸的是,他们没有具体说明你什么时候。

此外,我可能会为这两种尺寸包含这些图像,但系统会自动切换它们(如何?)或者我必须自己进行切换?

3 个答案:

答案 0 :(得分:2)

你自己不应该这样做,系统可以自动完成。

这是Apple人机界面指南,您可以在其中找到图标分辨率: https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/custom-icons/

例如: 如果您使用标签栏项目的圆形图标,则应为纵向模式创建以下尺寸:

  • 75px×75px(25pt×25pt @ 3x)
  • 50px×50px(25pt×25pt @ 2x)
  • 25px×25px(25pt×25pt @ 1x)

和横向模式:

  • 54px×54px(18pt×18pt @ 3x)
  • 36px×36px(18pt×18pt @ 2x)
  • 18px×18px(18pt×18pt @ 1x)

将此图标添加到Assets.xcassets或某处后,您可以从故事板中选择标签栏项目图标:

选择标签栏项目,然后在属性检查器中,为图像字段选择纵向图像,为景观字段选择横向图像。

之后系统将为您完成所有事情。

enter image description here

答案 1 :(得分:1)

不幸的是,紧凑/常规状态不仅取决于方向或应用程序窗口大小,还取决于设备。

您可以为不同的设备找到常规/紧凑尺寸细分here。您应该查找第二个值(例如,紧凑宽度,常规高度)。

一旦方向/应用窗口发生变化,两种类型的图标会自动之间发生变化。

答案 2 :(得分:0)

TLDR :您可以通过将“宽度类别”设置为“任意和紧凑”,为资产目录中的常规或紧凑标签栏指定不同的图标。

是的,根据人机界面指南Custom Icons - Tab Bar Icon Size,您应该同时包含两个图标大小

  

在纵向方向上,标签栏图标出现在标签标题上方¹。在横向模式下,图标和标题并排出现。

¹⁾仅在iPhone上如此。在用于全屏应用程序的iPad上,图标和标题在纵向和横向都并排显示。

  

根据设备和方向,系统显示常规或紧凑的选项卡栏。您的应用应包含两种尺寸的自定义标签栏图标。

准则正在讨论Size Classes。在这种情况下,常规或紧凑型标签栏是指常规或紧凑宽度尺寸等级的标签栏。

您可以在资产目录中为不同尺寸的类别指定不同的图像。只需在“属性检查器”中为您设置标签页图标“图像集”中的宽度类别Any & Compact

Width Class - Any & Compact

在“任意宽度”部分为常规尺寸类别设置较大的图像,在“紧凑宽度”部分为紧凑尺寸类别设置较小的图像。

然后系统将根据尺寸类别(设备,方向,多任务配置)自动显示正确的图像

您可以在《人机界面指南{{3}》中找到正确的图标尺寸。

例如,对于圆形字形,图标应为:

  • 常规标签栏为25x25磅(50x50像素@ 2x)
  • 用于紧凑型标签栏的18x18 pt(36x36 px @ 2x)

对于方形字形,图标应为:

  • 常规标签栏的23x23点(46x46 px @ 2x)
  • 17x17磅(34x34像素@ 2x)用于紧凑型标签栏

对于宽字形和高字形,还有其他尺寸。

在上面的屏幕截图中,我使用了在属性检查器中将比例设置为Single Scale的PDF图像。系统会自动生成1x,2x和3x PNG。