我可以在自定义UIAlertView中添加UIImageView吗?

问题描述

| 我已经有一个自定义UIAlertView,并且我想在其中添加UIImageView以添加自定义UIAlertView。 我已经用数组添加了UIImageView并开始对其进行动画处理,但是它不起作用。如果您愿意,我可以发布代码。 请尽快帮我。我被卡住了:( 这是代码
- (id)initWithImage:(UIImage *)image text:(Nsstring *)text
{

    //CGSize imageSize = self.backgroundImage.size;
    CGRect frame = [[UIScreen mainScreen] bounds];

    width = frame.size.width; 
    height = frame.size.height;

    if (self = [super init])
    {



        loadtext = [[UILabel alloc]initWithFrame:CGRectZero];
        loadtext.textColor = [UIColor blackColor];
        loadtext.backgroundColor = [UIColor whiteColor];
        [self addSubview:loadtext];

        //Create the first status image and the indicator view
        UIImage *statusImage = [UIImage imageNamed:@\"status1.png\"];
        activityImageView = [[UIImageView alloc] 
                                          initWithImage:statusImage];


        //Add more images which will be used for the animation
        activityImageView.animationImages = [NSArray arrayWithObjects:
                                             [UIImage imageNamed:@\"status1.png\"],[UIImage imageNamed:@\"status2.png\"],[UIImage imageNamed:@\"status3.png\"],[UIImage imageNamed:@\"status4.png\"],[UIImage imageNamed:@\"status5.png\"],[UIImage imageNamed:@\"status6.png\"],[UIImage imageNamed:@\"status7.png\"],nil];


        //Set the duration of the animation (play with it
        //until it looks nice for you)
        activityImageView.animationDuration = 1.0;


        //Position the activity image view somewhere in 
        //the middle of your current view
        activityImageView.frame = CGRectZero;

        //Start the animation
        [activityImageView startAnimating];


        //Add your custom activity indicator to your current view
        [self addSubview:activityImageView];



        //self.backgroundImage = image;



    }
    return self;
}

- (void) layoutSubviews{
    //lblUserName.transform = CGAffineTransformMake;
    //[lblUserName sizetoFit];

    CGRect textRect = activityImageView.frame;
    textRect.origin.x = (CGRectGetWidth(self.bounds) - CGRectGetWidth(textRect))/2;
    textRect.origin.y = (CGRectGetHeight(self.bounds) - CGRectGetHeight(textRect))/2;
    textRect.origin.x -= 100.0;
    textRect.origin.y -= 60.0;
    textRect.size.height = 30;
    textRect.size.width = self.bounds.size.width - 50;

    activityImageView.frame = textRect;
}   
代码开始工作。但是现在,这个UIImageView占据了我的整个屏幕,并且位于UIAlertView的前面。虽然我给了10px的高度和宽度。它显示相同。有人可以帮忙吗? 谢谢, 安克斯     

解决方法

是的,您可以在自定义警报视图中添加图像视图。无需采用UIView自定义类,而需要采用UIImage-View&您可以使用image-view属性。     ,更改
activityImageView.frame = CGRectZero;
到一些自定义框架。 例如:
activityImageView.frame = CGRectMake(0,100,100);