自定义UIAlertView

- (void)viewDidLoad {
    [super viewDidLoad];
/*
    UIAlertView *alertView = [[UIAlertView alloc]
                              initWithTitle:NSLocalizedString(@"", nil)
                              message:NSLocalizedString(@"\n\n\n", nil)
                              delegate:self
                              cancelButtonTitle:@"注册"
                              otherButtonTitles:@"登陆",
                              nil];

//用户名
    UILabel *user_name = [[UILabel alloc] initWithFrame:CGRectMake( 20, 25, 60, 25)];
    [user_name setBackgroundColor:[UIColor clearColor]];
    user_name.lineBreakMode = UILineBreakModeWordWrap;
    //user_name.numberOfLines = 0;
    [user_name setTextColor:[UIColor whiteColor]];
    [user_name setFont:[UIFont systemFontOfSize:15.0]];
    user_name.text = @"用户名";
    [alertView addSubview:user_name];
    [user_name release];
    
    UITextField *name = [[UITextField alloc] initWithFrame:CGRectMake( 80, 25, 180, 25)];
    [name setBackgroundColor:[UIColor clearColor]];
    [name setBorderStyle:UITextBorderStyleBezel];
    name.backgroundColor = [UIColor whiteColor];
    name.placeholder = @"User name";
    [alertView addSubview:name];
    [name release];
//user pass_word
    UILabel *pass_word = [[UILabel alloc] initWithFrame:CGRectMake(20, 60, 40,25)];
    [pass_word setBackgroundColor:[UIColor clearColor]];
    pass_word.lineBreakMode = UILineBreakModeWordWrap;
    //pass_word.numberOfLines = 1
    [pass_word setTextColor:[UIColor whiteColor]];
    [pass_word setFont:[UIFont systemFontOfSize:15.0]];
    pass_word.text = @"密  码";
    [alertView addSubview:pass_word];
    [pass_word release];

    UITextField *passwordText = [[UITextField alloc] initWithFrame:CGRectMake( 80, 60, 180, 25)];
    [passwordText setSecureTextEntry:YES];
    [passwordText setBackgroundColor:[UIColor clearColor]];
    [passwordText setBorderStyle:UITextBorderStyleBezel];
    passwordText.backgroundColor = [UIColor whiteColor];
    passwordText.placeholder = @"pass_word";
    [alertView addSubview:passwordText];
    [passwordText release];
//buttons
    for (UIView *Outlet in [alertView subviews])
    {
        if(![Outlet isKindOfClass:[UITextField class]]&&![Outlet isKindOfClass:[UILabel class]])
        {
            UIButton* button = (UIButton*)Outlet;
            button.frame = CGRectMake(button.frame.origin.x,100,button.frame.size.width , button.frame.size.height);
        }
    }
    [alertView setTransform:CGAffineTransformMakeTranslation(0, -60)];
    [alertView show];
    [alertView release];
 */
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
自定义UIAlertView的方法已经在iOS13之后被废弃,推荐使用UIAlertController来代替。下面介绍如何自定义UIAlertController的弹出位置以及宽度。 1. 自定义弹出位置 可以使用UIAlertController的popoverPresentationController属性来设置弹出位置。具体步骤如下: ``` // 创建UIAlertController对象 UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Title" message:@"Message" preferredStyle:UIAlertControllerStyleAlert]; // 创建弹出位置的UIView对象 UIView *popoverView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)]; // 设置弹出位置 alertController.popoverPresentationController.sourceView = popoverView; alertController.popoverPresentationController.sourceRect = popoverView.bounds; // 弹出UIAlertController [self presentViewController:alertController animated:YES completion:nil]; ``` 2. 自定义宽度 可以通过设置UIAlertController的preferredContentSize属性来改变其宽度。具体步骤如下: ``` // 创建UIAlertController对象 UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"Title" message:@"Message" preferredStyle:UIAlertControllerStyleAlert]; // 设置宽度 alertController.preferredContentSize = CGSizeMake(280, 200); // 弹出UIAlertController [self presentViewController:alertController animated:YES completion:nil]; ``` 需要注意的是,此方法只适用于UIAlertControllerStyleAlert风格的UIAlertController。如果使用UIAlertControllerStyleActionSheet风格的UIAlertController,设置preferredContentSize属性将不会生效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值