garaster 2012-10-25 09:11 采纳率: 0%
浏览 4919
已采纳

设置iphone中的UIToolbar的颜色

在ios4.3以上版本,想把UIToolbar的颜色改成灰色,

但是下面的代码没有实现:

- (void)drawRect:(CGRect)rect {

    UIGraphicsBeginImageContext(rect.size);

    CGContextRef ctx = UIGraphicsGetCurrentContext();
    CGContextSaveGState(ctx);

        [[UIColor colorWithRed:64.0f/255.0f
                         green:64.0f/255.0f
                          blue:64.0f/255.0f
                         alpha:1.0f] set];

    CGRect myRect = CGRectMake(0, 0, self.frame.size.width, self.frame.size.height);
    CGContextFillRect(ctx, myRect);

    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    CGContextRestoreGState(ctx);
    UIGraphicsEndImageContext();

    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}

为什么?

  • 写回答

1条回答

  • g989_1314125 2012-10-26 06:44
    关注

    可以通过使用灰色的背景图片实现。用下面代码加入图片:

       UIToolbar *toolBar = //此处添加toolbar
    
        UIImage *toolbarBkg = [[UIImage imageNamed: @"toolbarBkg.png"] stretchableImageWithLeftCapWidth:0 topCapHeight:0];
    
        if ([toolBar respondsToSelector:@selector(setBackgroundImage:forToolbarPosition:barMetrics:)])
            [toolBar setBackgroundImage:toolbarBkg forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
        else {
            UIImageView *background = [[UIImageView alloc] initWithImage:toolbarBkg];
            background.frame = toolBar.frame;
            [toolBar insertSubview:background atIndex:0];
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?