【发布时间】:2021-12-16 01:08:54
【问题描述】:
我正在尝试为我的 Swift 项目中的标签栏项目显示一个自定义按钮。 我在 Xcode 项目的 Assets 文件夹中添加了一个名为 btn_new 的 png 文件,并尝试在自定义标签栏控制器类中显示自定义按钮。但我只能在我的模拟器中看到一个默认蓝色的圆形按钮,并且没有自定义图像。
这是自定义标签栏控制器类。
import UIKit
class CustomTabBarController: UITabBarController {
var createEventViewController: CreateEventViewController!
override func viewDidLoad() {
super.viewDidLoad()
createEventViewController = CreateEventViewController()
self.delegate = self
self.tabBar.barTintColor = UIColor.customGreen()
}
func createListNC() -> UINavigationController {
let listVC = listViewController()
listVC.tabBarItem = UITabBarItem(title: "", image: UIImage(named: "btn_new"), tag: 0)
return UINavigationController(rootViewController: listVC)
}
func setUpTabbarItems() -> [UIViewController]{
return [createListNC()]
}
}
extension CustomTabBarController: UITabBarControllerDelegate {
func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool {
if viewController == tabBarController.viewControllers?[0] {
let vc = CreateEventViewController()
let nc = UINavigationController(rootViewController: vc)
nc.modalPresentationStyle = .popover
self.present(nc, animated: true, completion: nil)
return false
}
return true
}
}
我仔细检查了名称是否准确地称为“btn_new”,所以我不确定为什么不显示按钮。不太确定,但我担心的一件事是我没有为这个自定义图标设置大小。谁能告诉我如何显示标签栏项目的按钮图像?
【问题讨论】:
-
转到情节提要选择 tabBarItem 并在此处更改图像
-
你在哪里调用 setUpTabbarItems
标签: swift button icons uitabbarcontroller tabbar