简单的问题,如何删除标签栏项目文本并仅显示图像?
我想要在Instagram应用中喜欢的酒吧项目:

在xcode 6中的检查器中,我删除标题并选择@ 2x(50px)和@ 3x(75px)图像.但是,图像不使用已删除文本的可用空间.任何想法如何实现相同的标签栏项目图像,如在instagram应用程序?
我正在尝试在 SwiftUI TabView 中使用自定义图标。我看不出这段代码有什么问题——我已经包含resizable在图像中,但它没有缩小。
HomeView()
.tag(0)
.tabItem {
VStack {
Image("tab-home")
.resizable()
.aspectRatio(CGSize(width: 20, height: 20), contentMode: .fit)
Text("Home")
}
}
Run Code Online (Sandbox Code Playgroud)
当我查看这个时,图像是全尺寸的。
当Image是 SF 符号时它工作正常。
任何想法,SwiftUI 忍者?
苹果说:
根据设备和方向,系统会显示常规或紧凑的标签栏。您的应用应包含两种尺寸的自定义标签栏图标。
不幸的是,他们未能指定您何时获得哪个。
此外,我可能会包含两种尺寸的图像,但系统会自动在它们之间切换(如何?)还是我必须自己做?
所以我有一个.png428x176 px:
我希望将其用作项目处于选定状态时的标签栏背景图像。问题是图像太大。所以现在,我正在探索不同的分辨率后缀:@ 1x,@ 2x,@ 3x。但是,无论我在图像文件名中附加哪一个,该图像对于选项卡栏项目的背景而言仍然太大,尽管随着分辨率提高,它的确会变小。如何确定此图像的正确尺寸?
请记住,这是任何特定UITabBarItem状态处于选定状态时的背景图像。它是指的整个宽度和高度UITabBarItem。我的标签栏将在屏幕的整个宽度上放置三个项目。
许多答案都提供了基于快速的解决方案,但是我要问的是我的图像应以像素为单位的尺寸,换句话说,我应该在包装中包括多少尺寸的图像,以便该图像适合所有屏幕尺寸的标签栏。我可以想象,由于UITabBar默认情况下a期望UIImage其selectionIndicatorImage字段为a UIImageView,而不是a ,因此必须存在一种解决方案,该解决方案不涉及修改the UITabBar并将其UIImageView作为子视图添加,并手动管理图像视图应位于的位置,根据UITabBarItem当前选择的。