当前位置:编程学习 > wap >>

IOS学习:用UIWindow自定义AlertView(最基本代码)

[cpp]
//  
//  ABCustomAlertView.h  
//  KnowledgeChoice  
//  
//  Created by  on 13-6-19.  
//  Copyright (c) 2013年 DoubleMan. All rights reserved.  
//  自定义相应的控件及代理就可以用了。。  
 
#import <UIKit/UIKit.h>  
 
@inte易做图ce ABCustomAlertView : UIWindow 
 
// 显示  
- (void)show; 
// 消失  
- (void)dismiss; 
 
@end 

//
//  ABCustomAlertView.h
//  KnowledgeChoice
//
//  Created by  on 13-6-19.
//  Copyright (c) 2013年 DoubleMan. All rights reserved.
//  自定义相应的控件及代理就可以用了。。

#import <UIKit/UIKit.h>

@inte易做图ce ABCustomAlertView : UIWindow

// 显示
- (void)show;
// 消失
- (void)dismiss;

@end
[cpp]
//  
//  ABCustomAlertView.m  
//  KnowledgeChoice  
//  
//  Created by on 13-6-19.  
//  Copyright (c) 2013年 DoubleMan. All rights reserved.  
//  
 
#import "ABCustomAlertView.h"  
 
@implementation ABCustomAlertView 
 
- (id)initWithFrame:(CGRect)frame 

    self = [super initWithFrame:frame]; 
    if (self) { 
        // Initialization code  
        self.windowLevel = UIWindowLevelAlert; 
        // 这里,不能设置UIWindow的alpha属性,会影响里面的子view的透明度,这里我们用一张透明的图片  
        // 设置背影半透明  
        self.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"alert_bg.png"]]; 
 
         
        UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 80)] autorelease]; 
        view.backgroundColor = [UIColor blackColor]; 
        view.center = CGPointMake(160, 240); 
 
        [self addSubview:view]; 
    } 
     
    return self; 

 
- (void)show { 
    [self makeKeyAndVisible]; 

 
- (void)dismiss { 
    [self resignKeyWindow]; 
    [self release]; 

 
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    // 点击消失  
    [self dismiss]; 

 
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event { 
     

 
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event { 
     

 
@end 

//
//  ABCustomAlertView.m
//  KnowledgeChoice
//
//  Created by on 13-6-19.
//  Copyright (c) 2013年 DoubleMan. All rights reserved.
//

#import "ABCustomAlertView.h"

@implementation ABCustomAlertView

- (id)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        // Initialization code
        self.windowLevel = UIWindowLevelAlert;
        // 这里,不能设置UIWindow的alpha属性,会影响里面的子view的透明度,这里我们用一张透明的图片
        // 设置背影半透明
        self.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"alert_bg.png"]];

       
        UIView *view = [[[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 80)] autorelease];
        view.backgroundColor = [UIColor blackColor];
        view.center = CGPointMake(160, 240);

        [self addSubview:view];
    }
   
    return self;
}

- (void)show {
    [self makeKeyAndVisible];
}

- (void)dismiss {
    [self resignKeyWindow];
    [self release];
}

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    // 点击消失
    [self dismiss];
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
   
}

- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
   
}

@end

这只是基本的思路,调用的时候只要调show和dismiss就可以显示、消失了。。。

补充:移动开发 , IOS ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,