【问题标题】:How to display icon using font ? ios如何使用字体显示图标? IOS
【发布时间】:2016-04-18 09:05:45
【问题描述】:

我有一个包含字体的文件(请查找附件),该字体应该根据代码显示图标。 但我没有成功用这种字体显示任何图标。这是我的代码:

    iconTest = UILabel();
    iconTest.frame = CGRectMake(0, 0, 100, 100);
    onTest.center = self.view.center;

    iconTest.font = UIFont(name: "icomoon", size:16.0);
    iconTest.text = "e906";

使用字体显示图标的正确方法是什么!

download font svg file

【问题讨论】:

    标签: ios svg icons uifont


    【解决方案1】:

    您必须设置文本属性,例如:

    iconTest.text = "\u{e906}";
    

    不要忘记在您的应用中 register您的自定义字体。

    【讨论】:

      【解决方案2】:

      按照以下步骤操作

      1> 双击安装字体

      2> 在 Xcode 中拖放字体并确保它们已添加到目标。

      3> 设置键 - info.plist 中应用程序提供的字体并为项目添加字体名称(在键下)

      4> 在情节提要中为您的控件设置自定义字体类型

      5> 迅速3

      let font = UIFont(name: "icomoon", size: 15)
          btnSignout.setTitle("\u{e913}", for: UIControlState.normal) // set font icon on UIButton
          btnSignout.titleLabel!.font =  font
      
      // In objectiveC
      _lbl.text =  [NSString stringWithUTF8String:"\ue92e"]; // set font icon on UILabel
      _lbl.font =  [UIFont fontWithName:@"icomoon" size:16];
      

      【讨论】:

        【解决方案3】:

        我在一些项目中使用图标字体。我已经创建了一个项目来轻松使用图标字体。这个项目的 README 是用中文写的。但是演示项目会清楚地显示一切。 https://github.com/JohnWong/IconFont

        图标字体总是通过设置文本在 UILabel 中使用。但我认为从字体创建 UIImage 更灵活。这就是我创建这个项目的原因。 通过设置项目注册字体的方法在马丁提供的答案中。这是一种通过代码注册字体的方法:https://github.com/JohnWong/IconFont/blob/master/IconFont/TBCityIconFont.m#L16

        【讨论】:

          【解决方案4】:

          Icomoon.swift:在 Swift 中使用您的 Icomoon 字体 - 为每个图标自动生成类型安全的枚举。

          【讨论】:

            【解决方案5】:

            尽管它不是 IcoMoon,但这个库还是值得注意的: https://github.com/0x73/SDevIconFonts

            它集成了 FontAwesome、Ionicons、Octicons 和 Iconic 作为图标字体。

            为它们分配代码,如下所示:

            label.font = UIFont.iconFontOfSize(.FontAwesome, fontSize: 50.0)
            label.text = String.fontAwesomeIconWithName(.Twitter)
            

            如前所述,您必须在应用的Info.plist 中注册字体文件。

            无论如何,关于 IcoMoon:我会使用上述库作为起点。应该相当容易 (*) 在分叉中添加 IcoMoon(或者更好地作为拉取请求)。

            (*) 从技术上讲,当我查看 https://github.com/0x73/SDevIconFonts/blob/master/SDevIconFonts/Classes/FontAwesome.swift 时,添加像 .Twitter 这样的便捷快捷方式列表是一项相当昂贵的任务。

            【讨论】:

              猜你喜欢
              • 2018-12-24
              • 1970-01-01
              • 2012-03-19
              • 2014-12-19
              • 2018-09-02
              • 2020-02-06
              • 1970-01-01
              • 2018-02-16
              • 2017-09-06
              相关资源
              最近更新 更多