0

我展示了一个包含子视图、图像和消息的子视图。我需要在特定持续时间/时间(5 秒)后迅速删除此子视图。子视图的代码如下:

     var HideView = UIView (frame: CGRectMake(0 , 0, 320, 480));
    HideView.backgroundColor = UIColor(red:0.0, green:0.0, blue:0.0, alpha:0.6);
    var ErrorView = UIView (frame: CGRectMake(0, 40, 320, 70));
    ErrorView.backgroundColor = UIColor(red:0.8, green:0.376, blue:0.094, alpha:1.0);
    ErrorView.clipsToBounds = true;
    ErrorView.layer.shouldRasterize = true
    HideView.addSubview(ErrorView)

    var ErrorImageView = UIImageView(frame: CGRectMake(5, 5, 30, 30));
    var ErrorImage = UIImage(named: "error_icon_white.pdf");
    ErrorImageView.image = ErrorImage;
    ErrorView.addSubview(ErrorImageView)

    var ErrorLabel = UILabel (frame: CGRectMake(50, 0, 270, 70));
    ErrorLabel.backgroundColor = UIColor.clearColor();
    ErrorLabel.textColor = UIColor.whiteColor()
    ErrorLabel.font =  UIFont(name: "Gotham", size: 1)
    ErrorLabel.numberOfLines = 3
    var errmsg = "Hello world"
    ErrorLabel.text = errmsg;
    ErrorView.addSubview(ErrorLabel)
    self.view.addSubview(HideView);

我能达到这个要求吗?如果是,那么如何?提前致谢。

4

1 回答 1

1

添加您的子视图后,添加一个计时器以在所需的时间段(5 秒)后触发

var timer = NSTimer.scheduledTimerWithTimeInterval(NSTimeInterval(5.0), target: self, selector: "timeExpired", userInfo: nil, repeats: false)

然后,您可以在“timeExpired”函数中执行您喜欢的任何操作:

func timeExpired() {
        println("time expired")
        // yoursubview.removeFromSuperview()
    }
于 2015-04-28T11:25:16.693 回答