【问题标题】:xcode UIBarButtonItem viewxcode UIBarButtonItem 视图
【发布时间】:2019-03-22 20:03:33
【问题描述】:

在我的 Xcode 项目中,我有一个视图控制器类

class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
    @IBOutlet weak var refreshButton: UIBarButtonItem!

    var refreshUiButton = UIButton()

    override func viewDidLoad() {
        super.viewDidLoad()

        refreshUiButton.setImage(#imageLiteral(resourceName: "refresh"), for: .normal)
        refreshUiButton.imageView?.contentMode = UIViewContentMode.scaleAspectFit
        refreshUiButton.addTarget(self, action: #selector(didRefreshClicked(_:)), for: .touchUpInside)

        refreshButton.customView = refreshUiButton
    }

以及它的样子

该按钮覆盖了导航面板中间的分段控件。我有一个 UIButton 扩展,因此我想将 UIbutton 用作 UIBarButtonItem 的自定义视图。

我希望它看起来像这样

我该如何组织呢?

【问题讨论】:

  • 你在使用 UIRightbar 按钮项吗?还是不?
  • 是的。 refreshButton 位于右侧栏中。在第二张图片中可以看到。
  • 为什么要在 UIBar 按钮中使用 UIButton 有什么具体原因?
  • 是的,我有一个 UIButton 的扩展,我想在导航栏上查看它
  • 好的,你需要设置相对于 UIbarbutton 框架的 refreshUiButton 框架。

标签: ios swift xcode view uibarbuttonitem


【解决方案1】:

您的按钮图像似乎大小不正确。如果我是对的,您需要根据Human Design 的尺寸。或者您可以将系统 barButtonItem 的色调颜色更改为黑色。

【讨论】:

  • refreshUiButton.imageView?.contentMode = UIViewContentMode.scaleAspectFit。我认为无论我的图像有多大尺寸。
  • @VahagChakhoyan 我刚刚检查过了。当我使用 500x76 像素的图像时,它会拉伸到导航标题。我设置了较小的尺寸,没关系。我想 UIbarButtonItem 占用 customView 的大小,而 customView 占用它的内容大小。按钮的内容是图像大小。所以 contentMode 不会影响任何东西
猜你喜欢
  • 2020-07-26
  • 2016-08-11
  • 2023-03-14
  • 1970-01-01
  • 2011-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多