【问题标题】:Capitalized text in UILabel from visual editor in xcode来自 xcode 中的可视化编辑器的 UILabel 中的大写文本
【发布时间】:2017-10-11 06:43:26
【问题描述】:

我是 iOS 的初学者。我发现有一些方法可以使文本变粗,以及从可视化编辑器更改字体和字体大小等。但是有什么方法可以设置 UILabel 文本全部大写从可视化编辑器(STORYBOARD,NOT CODE)。我搜索但只找到了这样的基于代码(Swift/Objective C)的答案:

testDisplayLabel.text = testDisplayLabel.text.uppercased()

【问题讨论】:

    标签: ios xcode uilabel


    【解决方案1】:

    一个合法的问题——一个无用的(如果不是傲慢的话)答案被标记为已接受。当您从撰稿人那里收到大量不是全部大写的文本时,这并不罕见。所以答案是——你必须以编程方式处理它。

    编辑 通常,以编程方式包装文本常量是个好主意。首先,它让您有机会本地化您的应用程序(甚至在未来):

    extension String {
        func localized (lang: String) -> String {
            guard let path = Bundle.main.path (forResource: lang, ofType: "lproj") else { return "" }
            guard let bundle = Bundle (path: path) else { return "" }
            return NSLocalizedString(self, tableName: nil, bundle: bundle, value: "", comment: "")
        }
            
        func localized () -> String {
            guard let loc = Locale.current.languageCode else { return "" }
            return localized(lang: loc)
        }
    }
    

    所以当你需要显示一个字符串时,你可以像这样应用这个方法:

    "My String".localized()
    

    同样,您的字符串应以通用本地化开头,然后在需要时将它们大写:

    "This should be all caps".localized().uppercased()
    

    【讨论】:

      【解决方案2】:

      默认情况下,“小写单词”和“大写单词”在首选项 -> 键绑定 -> 文本键绑定中是未绑定的。只需创建一个新集合并将它们绑定到某些东西。然后你就可以使用绑定来大写文本了。

      【讨论】:

        【解决方案3】:

        只需打开大写锁定并输入文本 :) 这就是我们在情节提要中所做的方式,您可以做的其他事情是选择其中只有大写字符的字体。

        【讨论】:

        • 所以如果我们从键盘输入,它不会是大写?
        • 如果启用大写字母将是情节提要中的大写字母,如果我们选择只有大写字符,那么无论您输入什么(小写或大写),它都会显示为大写文本
        • 那么,如果文本最初是大写的,那么我们稍后输入的任何文本也会是大写吗?
        • 你选择什么方法?大写或只有大写字母的字体?
        • 只有大写,所以如果我输入带有大写锁定的大写,它不会打印小写?
        猜你喜欢
        • 2012-05-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-18
        • 2013-01-02
        • 1970-01-01
        相关资源
        最近更新 更多