如何UILabel在Swift中强调一下?我搜索了Objective-C但却无法让它们在Swift中工作.
我有一个UIStackView,里面UIScrollView显示水平排列的动态添加的子视图.当前的解决方案将开始显示左侧的项目,我想开始从中心分配项目而不更改子视图的宽度和高度.我怎么做?我也对不使用的解决方案持开放态度UIStackView.这样我就可以支持设备<iOS9.
(当前)
(预期)
我想使用枚举与本地化的字符串,所以我喜欢这样,它的工作原理,但这个解决方案的问题是:我无法从本地化字符串轻松获取枚举值,我必须有关键来做到这一点:
let option = DietWithoutResidueOption(rawValue: "NoDiet")
Run Code Online (Sandbox Code Playgroud)
如果不是我必须调用dietWithoutResidueOptionWith方法来获取枚举值...:/
有一个更好的解决方案来直接存储localizedString而不是枚举中的键吗?
谢谢
列举
enum DietWithoutResidueOption: String {
case NoDiet = "NoDiet"
case ThreeDays = "ThreeDays"
case FiveDays = "FiveDays"
private func localizedString() -> String {
return NSLocalizedString(self.rawValue, comment: "")
}
static func dietWithoutResidueOptionWith(#localizedString: String) -> DietWithoutResidueOption {
switch localizedString {
case DietWithoutResidueOption.ThreeDays.localizedString():
return DietWithoutResidueOption.ThreeDays
case DietWithoutResidueOption.FiveDays.localizedString():
return DietWithoutResidueOption.FiveDays
default:
return DietWithoutResidueOption.NoDiet
}
}
}
Run Code Online (Sandbox Code Playgroud)
Localizable.strings
"NoDiet" = "NON, JE N'AI PAS DE RÉGIME";
"ThreeDays" = "OUI, SUR 3 JOURS";
"FiveDays" = "OUI, SUR …Run Code Online (Sandbox Code Playgroud) 如何只在一个设备上更改约束的值.例如,我想为iPhone 4以外的所有iPhone显示400px高度的按钮,我将用300px显示它?
ios ×4
swift ×3
autolayout ×2
enums ×1
ios9 ×1
localization ×1
uilabel ×1
uiscrollview ×1
uistackview ×1
xcode ×1