有什么方法可以本地化 Eureka 的所有输出?
我现在面临的主要问题是更改 CountDownRow 中的文本。我想更改为行中的输出。我没有找到编辑“小时”和“分钟”文本的方法
忽略可选标签。我认为这是一个单独的问题。
有什么方法可以本地化 Eureka 的所有输出?
我现在面临的主要问题是更改 CountDownRow 中的文本。我想更改为行中的输出。我没有找到编辑“小时”和“分钟”文本的方法
忽略可选标签。我认为这是一个单独的问题。
您好,要使 countDownCell 可本地化,您必须创建自己的子类,因为这似乎是框架实现的错误,但要创建这样的子类
//
// MyCountDownRow.swift
// EurekaExamplesSwift3
//
// Created by Reinier Melian on 2/20/17.
// Copyright © 2017 Reinier Melian. All rights reserved.
//
import UIKit
import Eureka
final class MyCountDownRow: _CountDownRow,RowType {
required public init(tag: String?) {
super.init(tag: tag)
displayValueFor = { [unowned self] value in
guard let val = value else {
return nil
}
if let formatter = self.dateFormatter {
return formatter.string(from: val)
}
let components = Calendar.current.dateComponents([Calendar.Component.minute, Calendar.Component.hour], from: val)
var hourString = NSLocalizedString("k_hour", comment: "")
if components.hour != 1{
hourString += "s"
}
return "\(components.hour!) \(hourString) \(components.minute!) \(NSLocalizedString("k_min", comment: ""))"
}
}
}
使用你自己的类
<<< MyCountDownRow(){
$0.title = "Spanish"
}.cellSetup({ (dateCell, myCoutDownRow) in
let currentDate = NSDate() as Date
myCoutDownRow.dateFormatter?.dateStyle = .short
myCoutDownRow.dateFormatter?.timeStyle = .short
dateCell.row.value = currentDate
})
你可以处理本地化,然后定义你的键k_hour
,k_min
在你的 Localizable.string 中你必须有这个结果
我希望这可以帮助你,