更改 UIAlertView 按钮布局

Posted

技术标签:

【中文标题】更改 UIAlertView 按钮布局【英文标题】:Change UIAlertView button layout 【发布时间】:2011-11-04 15:26:11 【问题描述】:

我想在“UIAlertview”中显示两个按钮。因为按钮文本很长,我希望按钮在垂直堆栈中一个在另一个之上,而不是并排显示。是否有可能做到这一点?

【问题讨论】:

“一个接一个”是什么意思?粘贴一些代码一些图像 你可以考虑cocoacontrols.com/platforms/ios/controls/tsalertview或者去Github浏览一下。 【参考方案1】:

您需要继承 UIAlertView 并使用您描述的按钮创建自己的自定义警报。

【讨论】:

来自类参考:UIAlertView 类旨在按原样使用,不支持子类化。此类的视图层次结构是私有的,不得修改。 @Luke 你的评论/链接应该是一个答案。 恕我直言,我的评论并不是真正的答案。真正的答案是对这个问题说“不”——然后建议构建一个自定义的 UIView 类等来完成自定义 UIAlertView 的效果。 如果你仍然想冒险继承子类,下面是它的样子:***.com/a/16526932/378977【参考方案2】:

不幸的是,您唯一的选择是缩短按钮文本或添加另一个按钮。 UIAlertView 仅在按钮多于两个时才会布局。

除此之外,您可以将 UIAlertView 子类化,但此时简单地创建您自己的自定义视图/视图控制器可能会更容易。

【讨论】:

以上是关于更改 UIAlertView 按钮布局的主要内容,如果未能解决你的问题,请参考以下文章

UIAlertView 替换

如何更改 UIAlertView 按钮的宽度?

更改 UIAlertView 中的按钮标题颜色

uialertview 中的图像...?

更改 UIAlertview 和 UIActionsheet 按钮的色调颜色

UIAlertView 和 UIAlertController