zoukankan      html  css  js  c++  java
  • UIWebView加上safari风格前进后退按钮(转)

    今天在写程序内打开网页的功能,写工具条的时候发现系统图标里面竟然没有后退按钮,,由于我这个是静态库工程,不可能自己弄张图上去,不然使用本库的时候还得附上图片,经过一下午的搜索,终于找到个比较靠谱的,这哥们硬是用代码给画出来个箭头了(话说如果是其他不规则的图形要咋办呢?),还是google管用啊,baidu非常非常非常。。。垃圾。 

    Code Example: Drawing the iPhone Back Button(转载)

    Recently, I had need to provide a back button similar to the one used in Mobile Safari for a consulting project.

    Many of the buttons used in the built-in iPhone applications are made available via the SDK with built in button types and graphics. Unfortunately, the back button is not one of these.

    Because I needed to display the toolbar button from inside a static library which can not include images, I had to render the back arrow directly in code.

    Since this was a bit time consuming, I thought I would share in hopes that it saves someone else a little bit of time.

    - (CGContextRef)createContext
    {
    // create the bitmap context
    CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
    CGContextRef context = CGBitmapContextCreate(nil,27,27,8,0,
    colorSpace,kCGImageAlphaPremultipliedLast);
    CFRelease(colorSpace);
    return context;
    }
    - (CGImageRef)createBackArrowImageRef
    {
    CGContextRef context = [self createContext];
    // set the fill color
    CGColorRef fillColor = [[UIColor blackColor] CGColor];
    CGContextSetFillColor(context, CGColorGetComponents(fillColor));
    CGContextBeginPath(context);
    CGContextMoveToPoint(context, 8.0f, 13.0f);
    CGContextAddLineToPoint(context, 24.0f, 4.0f);
    CGContextAddLineToPoint(context, 24.0f, 22.0f);
    CGContextClosePath(context);
    CGContextFillPath(context);
    // convert the context into a CGImageRef
    CGImageRef image = CGBitmapContextCreateImage(context);
    CGContextRelease(context);
    return image;
    }
    - (UIBarButtonItem *)backButton
    {
    CGImageRef theCGImage = [self createBackArrowImageRef];
    UIImage *backImage = [[UIImage alloc] initWithCGImage:theCGImage];
    CGImageRelease(theCGImage);
    UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithImage:backImage
    style:UIBarButtonItemStylePlain
    target:self.webView
    action:@selector(goBack)];
    [backImage release], backImage = nil;
    return [backButton autorelease];
    }
     
  • 相关阅读:
    NodeJS从零开始——NPM的使用
    初涉Node.js
    C# Double toString保留小数点方法
    SQL Server2008附加数据库之后显示为只读
    如何在64位的Windows中安裝PLSQLDEVELOPER 8
    SQL Server DATEADD() 函数
    flash builder Error #2032
    [SC] OpenSCManager FAILED 1722
    Windows Media Player安装了却不能播放网页上的视频
    SqlServer里DateTime转字符串
  • 原文地址:https://www.cnblogs.com/xiaoxiaoyublogs/p/5441315.html
Copyright © 2011-2022 走看看