首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

自个儿写的一个图片展示

2012-09-22 
自己写的一个图片展示MediaComponentView.h////MediaComponentCell.m//MediaComponent////Created by Jaso

自己写的一个图片展示
MediaComponentView.h

////  MediaComponentCell.m//  MediaComponent////  Created by Jason Wang on 10/7/10.//  Copyright 2010 __MyCompanyName__. All rights reserved.//#import "MediaComponentCell.h"#import "MediaComponentView.h"@interface MediaComponentCell()- (UIImage *)convertImageToGrayScale:(UIImage *)image;@end@implementation MediaComponentCell@synthesize delegateView;- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {    if ((self = [super initWithStyle:style  reuseIdentifier:reuseIdentifier])) {        // Initialization code    }    return self;}- (void)layoutSubviews {[super layoutSubviews];UIImageView *iView = (UIImageView *)[self.contentView viewWithTag:11];CGRect contentRect = self.contentView.frame;iView.frame = CGRectMake(contentRect.origin.x + 2, contentRect.origin.y + 2, contentRect.size.width - 4, contentRect.size.height - 4);}- (void)setData:(NSString *)imagePath index:(NSUInteger)_index {UIView *contentView = self.contentView;cellAtIndex = _index;if (imageFile) {[imageFile release];imageFile = nil;}imageFile = [[NSString alloc] initWithString:imagePath];UIImage *mainImage = [UIImage imageNamed:imageFile];MediaComponentView *view = (MediaComponentView *)delegateView;if (view.index != cellAtIndex) {mainImage = [self convertImageToGrayScale:mainImage];}UIImageView *iView = (UIImageView *)[contentView viewWithTag:11];if (!iView) {iView = [[UIImageView alloc] initWithImage:mainImage];iView.contentMode = UIViewContentModeScaleAspectFit;iView.tag = 11;[contentView addSubview:iView];[iView release];} else {[iView setImage:mainImage];}}- (void)selectedNow {UIImage *mainImage = [UIImage imageNamed:imageFile];UIImageView *iView = (UIImageView *)[self.contentView viewWithTag:11];[iView setImage:mainImage];}- (void)deSelectedNow {UIImage *origionalImage = [UIImage imageNamed:imageFile];UIImage *mainImage = [self convertImageToGrayScale:origionalImage];UIImageView *iView = (UIImageView *)[self.contentView viewWithTag:11];[iView setImage:mainImage];}- (UIImage *)convertImageToGrayScale:(UIImage *)image {CGRect imageRect = CGRectMake(0, 0, image.size.width, image.size.height);CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceGray();CGContextRef context = CGBitmapContextCreate(nil, image.size.width, image.size.height, 8, 0, colorSpace, kCGImageAlphaNone);CGContextDrawImage(context, imageRect, [image CGImage]);CGImageRef imageRef = CGBitmapContextCreateImage(context);UIImage *newImage = [UIImage imageWithCGImage:imageRef];CGColorSpaceRelease(colorSpace);CGContextRelease(context);CFRelease(imageRef);return newImage;}- (void)dealloc {[imageFile release];     [super dealloc];}@end

热点排行