我正在构建一个显示详细信息的应用程序,我希望允许用户更改这些详细信息的字体 我已经做了一些研究,但所有这些都是去设备的设置并从那里改变字体 那么,有没有办法在我的应用程序中有类似的设置
提前谢谢
更新
我使用了以下滑块,但它没有用
@IBAction func FontSlider(sender: AnyObject) {
var currentValue = Int(Slider.value) as Int
println(currentValue)
ingredients.font = UIFont(name: ingredients.font.fontName, size: currentValue)
}
答案 0 :(得分:2)
您可以对UILabel和UITextView使用appearance proxies,并将字体保存在NSUserDefaults中。
当用户选择字体时(您必须创建一个界面,Rizwan关于使用UIPickerView的答案是个好主意),您可以保存字体并为所有标签和textView设置它。
%?
您可能需要检查已保存的字体并进行设置。这可以在根viewController的func setDefaultFont (font: UIFont)
{
NSUserDefaults.standardUserDefaults().setObject(font, forKey: "defaultFont")
UILabel.appearance().font = font;
UITextView.appearance().font = font;
}
方法中调用,甚至可以在app delegate中调用。
-viewDidLoad
答案 1 :(得分:0)
使用更好的方法UIPickerView
,其中向用户提供不同的UIfont
选项。
用户选择任何选项后,使用didSelectRow
功能并根据用户选择的字体更改字体。
编辑:因为您使用滑块而不是
@IBAction func FontSlider(sender: UISlider) {
var currentValue = Int(Slider.value) as Int
println(currentValue)
ingredients.font = UIFont(name: ingredients.font.fontName, size: currentValue)
}