iOS 7后退按钮符号?

时间:2013-09-12 01:22:37

标签: iphone ios uibutton interface-builder

我非常喜欢iOS 7中后退按钮箭头的形状,并希望在我的一个UIButton上使用它,但是喜欢>而不是<。是否有文字的方法,或者我应该只使用图像?

8 个答案:

答案 0 :(得分:21)

您必须使用图像。这些资产与Apple的原始大小相同。在这里,只需右键单击并保存每个 1x:1x

2x:2x

3x:3x

来源:https://developer.apple.com/design/resources/

答案 1 :(得分:19)

您可以使用GitHub上提供的CédricLuthiiOS-Artwork-Extractor提取所有iOS7作品:在模拟器中编译此应用并查找UINavigationBarBackDefault.png。

图片为UINavigationBarBackDefault.png

另一种方法是获取Teehan + Lax iOS7 GUI PSD (iPhone)文件。它包含大部分iOS7作品。还有一个Sketch App版本:Teehan + Lax iOS7 GUI for Sketch

答案 2 :(得分:15)

我的解决方案是使用Unicode字符作为后退按钮图标:

<< / P>

单点左角角度报价标记 Unicode:U + 2039,UTF-8:E2 80 B9

HTML实体:&lsaquo;

缺点:

  • 看起来不像真正的后退按钮图标,但对我来说足够接近

优点:

  • 简单快捷地实施
  • 无需图像文件
  • 因此,后退按钮图标的颜色不固定,但可能会根据颜色设计更改/ iOS新版本进行调整

说明:

  • 显示OS X角色查看器(时钟旁边,可能您必须在首选项 - >键盘中激活它)
  • 在左侧列表中,单击“圆括号”
  • 在Xcode中,将文本光标放在您定义为后退按钮文本的字符串
  • 在字符查看器中,单击第三行中的第一个条目(我必须单击几次,直到它插入Xcode中)

也许有更好的角色看起来像后退按钮图标......

答案 3 :(得分:15)

官方Apple后退按钮符号图片可以在下载 https://developer.apple.com/ios/human-interface-guidelines/resources/

答案 4 :(得分:2)

复制并粘贴。

查看 32 x 32

对于该位置,iOS通常的位置是从左侧安全区域开始的24。

@IBDesignable class BackArrow32Button: UIButton {
  override func draw(_ rect: CGRect) {
    //
    // this is just carefully MATCHED to the Apple one (2019)
    // make the box > 32x32 < and have it > 24 on the left from safe area <
    //
        let bezierPath = UIBezierPath()
        bezierPath.move(to: CGPoint(x: 17, y: 6))
        bezierPath.addLine(to: CGPoint(x: 7, y: 16))
        bezierPath.addLine(to: CGPoint(x: 17, y: 26))
        UIColor.black.setStroke()
        bezierPath.lineWidth = 3
        bezierPath.stroke()
  }
}

细节...

我没有添加内在内容的大小,因为

(A)这样的新程序员可能更容易

(B)通常来说,内在大小只是在接口构建器上被破坏的,因此,为了轻松起见,最好只在高度和宽度上加上约束:/

答案 5 :(得分:1)

从 iOS 14 开始,这是一个名为 --no-ff 的系统映像。您可以从 Interface Builder 中的图像下拉列表中选择它,也可以使用 chevron.backward

以编程方式

出于某种原因,它似乎已从 iOS 13 中的 UIImage(named: "chevron.backward") 重命名,因此如果您需要向后兼容,请改用那个。

恼人的是,如果您想要进一步向后兼容,您仍然需要在您的资产目录中提供一个同名的后备图像。此处的其他答案已经涵盖了这种可能性,但请注意,后 V 形已更改了几次,因此您可能希望在使用之前确保所提供的图像仍然是最新的。

答案 6 :(得分:0)

这最好通过使用图像来实现。抱歉,没有办法用文字做到这一点。

我能够找到this image,它是.png

答案 7 :(得分:0)

我想回答这个问题:

Creating a left-arrow button (like UINavigationBar's "back" style) on a UIToolbar

(受machoota的回答启发),但它已被锁定,而且,作为新手,我没有代表……反正swiftui版本:

// Based on the requirement
android:focusable="true"
android:focusableInTouchMode = "true"

这是一个肮脏的骇客,但话又说回来,现在尝试在swiftui中进行远程自定义的操作还是很棘手的……