iphone-common-codes-ccteam源代码 CCUIWindow.m

本文详细解析了CCUIWindow.m文件中关于CCFC模块的功能实现,包括添加图像到状态栏的方法、添加图像到窗口的方法及获取所有窗口的数组等核心功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//
//  CCUIWindow.m
//  CCFC
//
//  Created by xichen on 11-12-17.
//  Copyright 2011年 ccteam. All rights reserved.
//

#import "CCUIWindow.h"
#import "CCLog.h"

@implementation UIWindow(cc)

// 
+ (UIWindow *)addImgToStatusBar:(UIImage *)img withRect:(CGRect)imgRect
{
        CGRect frame = {{0,0}, {320,20}};
        UIWindow *wnd = [[UIWindow alloc] initWithFrame:frame];
//    [UIApplication sharedApplication].statusBarHidden = YES;
//      [wnd setBackgroundColor:[UIColor clearColor]];
        [wnd setWindowLevel:UIWindowLevelAlert];

        UIImageView *imgView = [[UIImageView alloc] initWithFrame:imgRect];
        [imgView setContentMode:UIViewContentModeScaleAspectFit];
//    UIImage *scaledImg = [img scale:0.5];
        [imgView setImage:img];

        [wnd addSubview:imgView];
        [imgView release];
    
    [wnd makeKeyAndVisible];
    
    return wnd;
}

// not ok
+ (void)addImgToWindow:(UIImage *)img withRect:(CGRect)imgRect
{
    UIWindow *window = [[UIApplication sharedApplication] keyWindow];
    [window setWindowLevel:UIWindowLevelStatusBar];
    UIImageView *imgView = [[UIImageView alloc] initWithFrame:imgRect];
        [imgView setContentMode:UIViewContentModeCenter];
        [imgView setImage:img];
    [window addSubview:imgView];
    [imgView release];
    
}

+ (NSArray *)logAllWindows
{
        NSArray *arr = [[UIApplication sharedApplication] windows];
        LOG_ID(arr);
        return arr;
}

- (void)getSubViewIsMemberOf:(NSString *)viewStr 
                                           array:(NSMutableArray *)outArray 
                                         maxSize:(int)maxSize
{
        [super getSubViewIsMemberOf:viewStr array:outArray maxSize:maxSize];
}

// alloc a window that is mainscreen bounds
+ (UIWindow *)allocMainScreenWindow
{
        return [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
}

#if CC_ENABLE_PRIVATE_API && CC_COMPILE_PRIVATE_CLASS

// uses private api
// 获取UITextEffectsWindow的指针
+ (UIWindow *)getTextEffectsWindow
{
        Class cls = NSClassFromString(@"UITextEffectsWindow");
        return [cls sharedTextEffectsWindow];
}

#endif

@end


可能有更新:

googlecode链接地址:http://code.google.com/p/iphone-common-codes-ccteam/source/browse/trunk/CCFC/files/CCUIWindow.m

github地址: https://github.com/cxsjabc/iphone-common-codes-ccteam/tree/master/CCFC/files/CCUIWindow.m


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值