[cpp]
//
// ABCustomAlertView.h
// KnowledgeChoice
//
// Created by on 13-6-19.
// Copyright (c) 2013年 DoubleMan. All rights reserved.
// 自定義相應的控件及代理就可以用了。。
#import <UIKit/UIKit.h>
@interface 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>
@interface 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就可以顯示、消失了。。。