Mad*_*dav 0 iphone cocoa-touch
这是我采取的代码.....
- (void)willPresentAlertView:(UIAlertView *)alertView
{
[[[alertView subviews] objectAtIndex:2] setBackgroundColor:[UIColor colorWithRed:0.5 green:0.0f blue:0.0f alpha:1.0f]];
}
- (void) presentSheet
{
UIAlertView *baseAlert = [[UIAlertView alloc]
initWithTitle:@"Alert" message:@"This alert allows the user to choose between a 'safe' and a 'deadly' choice, indicated by button color.\n\n\n\n"
delegate:self cancelButtonTitle:nil
otherButtonTitles:@"Deadly!", @"Safe", nil];
UITextField *txtFld = [[UITextField alloc] initWithFrame:CGRectMake(60,10,240,31)];
[txtFld setDelegate:self];
[txtFld setBackgroundColor:[UIColor clearColor]];
[baseAlert addSubView:txtFld];
[txtFld release];
[baseAlert show];
}
Run Code Online (Sandbox Code Playgroud)
我的问题是如果允许改变苹果提供的UIControls的基本外观,因为我没有看到任何理由苹果不应该允许这种类型的定制.
警报视图长期以来已经标准化,因为灭火器和安全标志之类的东西是标准化的,即您不希望人们在出现问题时不得不拼出新的界面.
通常,在高度标准化的界面中更改某些内容是个坏主意.它会给最终用户带来什么好处?他们会想,"该死的,我丢失了所有的数据,但警告告诉我确实看起来很有艺术感!" 更有可能的是,他们不会理解对话框实际上是警报,而是应用程序正常运行的一部分.
说了这么多,没有什么可以阻止你创建自己的自定义视图并以模态方式呈现它.这比Apple API引擎盖下的更安全,更容易.
| 归档时间: |
|
| 查看次数: |
970 次 |
| 最近记录: |