在 iOS7 中更改 UIAlertView 的字体大小
Posted
技术标签:
【中文标题】在 iOS7 中更改 UIAlertView 的字体大小【英文标题】:Change font size for UIAlertView in iOS7 【发布时间】:2014-02-07 18:43:20 【问题描述】:我想更改 alertView 中消息文本和标题文本的字体大小。苹果网站中没有关于此的文档,但苹果在其子类注释中说“UIAlertView 类旨在按原样使用”。请参考以下链接。 https://developer.apple.com/library/ios/documentation/uikit/reference/UIAlertView_Class/UIAlertView/UIAlertView.html
如果更改警报视图文本大小是要避免的还是可以更改的,我真的很困惑?谁能告诉我什么是最好的做法?
如果可以更改文字大小,能否提供一些方法来做到这一点?
【问题讨论】:
参见UIAlertView addSubview in iOS7 了解有关自定义 UIAlertView 的讨论。 【参考方案1】:是的,这是正确的“UIAlertView 类旨在按原样使用”。您不应直接访问 UIAlertView 中的任何标签,也不应将 UIAlertView 子类化 - Apple 明确说明了这一点,并且在发送到 Apple Store 以发布时可能会导致您的应用在修订期间被拒绝。这同样适用于 UIActionSheet。
这解释了为什么您无法通过 UIAlertView 的公共 API 访问任何 UILabel。从技术上讲,您仍然可以通过查看 UIAlertView 子视图 NSArray 属性的内容来访问它们 - 实际上包含所有子视图,其中包括 UILabel 和 UIButton 实例。但是,如前所述,您绝对应该避免这样做,而是考虑实现您自己的警报视图,以便在需要时以模态方式加载。
【讨论】:
【参考方案2】:就像前面的答案所说,您可以访问和修改内部标签,但您绝对 100% 不应该。
不确定您是否能够根据自己的需要对其进行自定义,但您可以尝试查看这个出色的加载覆盖类 MBProgressHUD。但是,使用这个库(我还没有尝试过)AHAlertView,您可能会获得更好的运气。
查找 iOS 库的一个很好的来源是 CocoaPods Spec Repo
【讨论】:
以上是关于在 iOS7 中更改 UIAlertView 的字体大小的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS7 中显示之后/期间更新 UIAlertView 消息
更改 UIAlertview 和 UIActionsheet 按钮的色调颜色
当 SDK 目标为 iOS7 时,UIAlertView 太记账,无法在 iOS8 中替换
如何在 iOS7 中将 UIDatePicker 添加到 UIALertView