重新排列iPhone警报中的按钮?

时间:2009-06-09 03:44:11

标签: ios objective-c iphone xcode cocoa-touch

是否可以让警报视图按钮彼此相对而不是彼此相邻?

6 个答案:

答案 0 :(得分:2)

不是没有自定义(子类化)UIAlertView类。如果你想采用这种方法,你必须改变UIAlertView的layoutSubviews方法,将其按钮放在不同的位置。

答案 1 :(得分:1)

如果有足够的按钮或文字太长,按钮将显示在彼此上方而不是彼此相邻。 UIKit为您决定并且没有办法控制它。

答案 2 :(得分:1)

如果你想冒风险,或者你不是针对AppStore,你可以在UIAlertView上使用未记录的setNumberOfRows方法。

- (void) showAlert 
{ 
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Your title" 
                          message:@"Your message" delegate:self  
                          cancelButtonTitle:nil 
                          otherButtonTitles:@"One", @"Two", @"Three", nil]; 
    [alert setNumberOfRows:3]; 
    [alert show]; 
 } 

答案 3 :(得分:0)

@Lucas - 是的,他们真的会拒绝在UIAlertView上调用setNumberOfRows的应用程序:我的应用程序经历了许多更新,直到他们最终拒绝并因此而更新。

@Martin - 它实际上似乎截断了不适合的文本。

答案 4 :(得分:0)

您可以使用UIActionSheet

在这里查看样本:)

http://www.timeister.com/2010/06/objc-show-alert-iphone/


祝你好运,

阿德里安

答案 5 :(得分:0)

我曾经遇到过同样的问题,

这是我发现的,完美的解决方案UIAlertview,两个按钮堆叠

https://github.com/TomSwift/TSAlertView