可以采用如下方法,寫一個函數:
-(UIImage*) getOneImageButtonWithArrow{ //tmpView做附控件 UIView *tmpView = [[UIView alloc] initWithFrame:CGRectMake(0.0f, 0.0f, 38.0f, 32.0f)]; tmpView.backgroundColor = [UIColor clearColor]; //bgImg作為背景 UIImage* bgImg = [UIImage imageNamed:@"background.png"]; UIImageView *bgImageView = [[UIImageView alloc] initWithImage:bgImg]; bgImageView.frame = tmpView.frame; //加入tmpView [tmpView addSubview:bgImageView]; [bgImageView release]; //裡面的icon UIImageView *tmpImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"icon.png"]]; tmpImageView.frame = CGRectMake(4.0f, 4.0f, 24.0f, 24.0f); tmpImageView.backgroundColor = [UIColor clearColor]; tmpImageView.alpha = 1.0f; [tmpView addSubview:tmpImageView]; //箭頭 UIImage *arrowImage = [UIImage imageNamed:@"arrow.png"]; UIImageView *arrowImageView = [[UIImageView alloc] initWithImage:arrowImage]; arrowImageView.frame = CGRectMake(28.0f, 4.0f, 6.0f, 24.0f); [tmpView addSubview:arrowImageView]; //獲取上下文,得到這個UIImage UIGraphicsBeginImageContextWithOptions(tmpView.bounds.size, NO, 0.0); [tmpView.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *tmpImage = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); return tmpImage; }