【问题标题】:Forward Navigation Arrow Button With Text in iOSiOS 中带有文本的向前导航箭头按钮
【发布时间】:2014-07-21 02:48:18
【问题描述】:

我想知道如何在导航栏上放置一个右导航箭头按钮,并用文字显示它,就像 Apple Music 和 Apple Podcast 应用程序一样:

【问题讨论】:

  • 你应该制作一个带有标签和箭头图像的自定义视图,然后用UIBarButtonItem包裹视图

标签: ios uinavigationbar uinavigationitem


【解决方案1】:

因此,正如 Sen 简要描述的,您希望将 UIView 拖到 Xcode 故事板中 UIViewController 的导航栏中(当您将其拖入时,它会自动包装到导航栏项目中)。然后,将UIView 的类更改为UIControl(这将允许您稍后在其中放置一个轻击手势识别器,但现在它的作用类似于UIView)。

现在向视图(控件)添加两个内容:UILabelUIImageView。在标签中输入您想要的任何内容并为其指定所需的大小等。现在,对于UIImageView,您必须将箭头图像(下面的链接)拖到 Xcode 中的项目中。您可以直接下载图像,将其拖到 Xcode 中的项目源代码资源管理器面板上,确保选中了如果需要复制图像的选项,然后单击“确定”。

现在,在情节提要中单击您的UIImageView,然后选择您刚刚拖入Xcode的图像作为UIImageView的图像(如果您正确将图像拖入Xcode,它的名称应该会自动出现在下拉框中; 如果您在情节提要中选择了UIImageView,则可以在 Xcode 的右侧面板上找到图像下拉框)。为了使箭头看起来像 Apple 的,请将其大小设置为大约 35 x 35。

现在,您需要做的就是将点击手势识别器拖到您的UIControl 上,然后从点击手势(在您的故事板文档大纲中)控制并拖动到您的视图控制器的源代码中。这将创建一个方法,您可以在其中添加代码到 segue。例如:

- (IBAction)forwardButtonClicked:(id)sender {
    [self.navigationController pushViewController:self.someViewController animated:YES];
}

现在一切都搞定了!

希望这不会太混乱。如果您有任何问题,请告诉我。

这是图片的链接:https://www.iconfinder.com/icons/211688/arrow_forward_icon#size=512(您可以使用网页底部的按钮将其下载为 .png)。

为了让它像苹果的后退箭头一样变蓝,我做了以下操作:

  • 我在照片编辑器(如 GIMP)中打开了下载的图像
  • 我截取了 Apple 默认的后退按钮箭头的屏幕截图(在模拟器打开时使用 cmd+shift+4 截取屏幕截图)。
  • 我在照片编辑器中打开了屏幕截图。
  • 我使用颜色选择器工具选择了苹果箭头的颜色。
  • 我用油漆桶填充了箭头图像的颜色。
  • 我将蓝色箭头图像导出为 .png(现在您可以像我之前提到的那样将此 .png 拖到 Xcode 中)。

【讨论】:

  • 似乎无法以这种方式工作。遵循此处列出的所有步骤后,一个巨大的不透明白色视图覆盖了我的应用程序的一半以上。关于我可能做错了什么的任何线索?
  • 我需要更多信息才能提供帮助。你确定你设置了图标的大小?如果您在将图像嵌入导航栏中时未指定图像大小,则其大小默认为实际图像的像素大小。也许图像很大并且延伸到导航栏之外并覆盖了您的视图控制器。但是,如果这是问题所在,我会感到非常惊讶。也许到这个时候,你已经弄清楚问题出在哪里了……
猜你喜欢
  • 2012-09-13
  • 2017-10-21
  • 2013-10-02
  • 2021-11-07
  • 2018-01-25
  • 2018-11-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多