[UIImage resizableImageWithCapInsets:]使用注意 转自:http://www.cnblogs.com/scorpiozj/p/3302270.html 最近在sae上搭建了个wp,因为深感自己前端的东西缺乏,所以想依次为契机,学习一下.本文是从个人的sae版wp转载过来. 原文见此. 本篇也是在实现微博过程中遇到的问题.原先以为很简单的东西,到了实际做的时候,才发现这里出错那里不对.浪费很多时间,究根结底,还是没有弄清楚文档. 在iOS5, UIImage添加…
转自:http://www.cnblogs.com/scorpiozj/p/3302270.html 最近在sae上搭建了个wp,因为深感自己前端的东西缺乏,所以想依次为契机,学习一下.本文是从个人的sae版wp转载过来. 原文见此. 本篇也是在实现微博过程中遇到的问题.原先以为很简单的东西,到了实际做的时候,才发现这里出错那里不对.浪费很多时间,究根结底,还是没有弄清楚文档. 在iOS5, UIImage添加了可以拉伸图片的函数,即: [UIImage resizableImageWithCa…
常见的按钮添加和背景设置如下: UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(80, 130, 160, 44)];[button setTitle:@”Test Button” forState:UIControlStateNormal]; // Image with without cap insetsUIImage *buttonImage = [UIImage imageNamed:@”blueButton”]…
1.继承链:NSObject 2.以下有三种方法来创建图片对象 (1) imageNamed:inBundle:compatibleWithTraitCollection:从image asset或者主要的捆绑包中载入图片来进行创建图片对象. (2) imageWithContentsOfFile: or initWithContentsOfFile:从本地文件中载入图片进行创建图片对象 (3) animatedImageWithImages:duration: and animatedImag…
IOS中对图片的处理 UIImage UIImage 继承于NSObject 以下介绍一下UIImage中的方法 首先是我们最经常使用的 通过图片的文件名称来获取这个图片 + (UIImage *)imageNamed:(NSString *)name //要注意的是这种方法适用于已经导入到project中的图片 //建议使用该方法获取图片(尤其是ios8系统下) NSString *imagePath = [[NSBundle mainBundle]pathForResource:@"sun&…
下面张图片,是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50,以下是没有经过技术性拉伸处理的情况: // 得到view的尺寸   CGSize viewSize = self.view.bounds.size;      // 初始化按钮   UIButton *button = [[UIButton alloc] init];   // 设置尺寸   button.bounds = CGRectMake(0, 0, 150,…
iOS 5.0 在iOS 5.0中,UIImage有一个新方法可以处理图片的拉伸问题 - (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets 这个方法只接收一个UIEdgeInsets类型的参数,可以通过设置UIEdgeInsets的left.right.top.bottom来分别指定左端盖宽度.右端盖宽度.顶端盖高度.底端盖高度 CGFloat top = 25; // 顶端盖高度 CGFloat bottom = 25…
纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能.极强的用户体验.华丽简洁的外观.华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑. 比如下面张图片,本来是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: // 得到view的尺寸   CGSize viewSize = self.view.bounds.size;  …
http://mp.weixin.qq.com/s/A900w0Y5pGjuaB4j9Os9ww1.UIImage 生成方法的对比 Apple官方的文档为生成一个UIImage对象提供了两种方法: 1. imageNamed,其参数为图片的名字:优点:加载时会缓存图片,用于图片的频繁使用:缺点:占用内存,直到应用结束 2. imageWithContentsOfFile,其参数也是图片文件的路径.优点:仅加载图片,不会缓存,用于价值次数较少的情况,降低内存消耗 那么两种有什么区别吗? 肯定是有的…
+ (UIImage *)imageNamed:(NSString *)name inBundle:(NSBundle *)bundle compatibleWithTraitCollection:(UITraitCollection *)traitCollection name:图片的名字.bundle:设置为nil则默认为main bundle.traitCollection:设置为nil则为main screen中描述的traits. 该方法在系统的缓存中查找具有指定名字和特征集的图像并返…
纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能.极强的用户体验.华丽简洁的外观.华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑. 比如下面张图片,本来是设计来做按钮背景的: button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: 1-(void)viewDidLoad 2{ 3[superviewDidLoad]; 4//得到view的尺寸 5…
前言: 一到公司报道那时,便着手独立的去完成了一个项目,其中的辛酸泪也是不足为外人道也.这次算是一个新型的app,仍然是独立开发,但心境和想法却是完全的不同.下面说一次以前做开发时常常忽略的知识,也算是一种复习了吧.下面言归正传: 1.自带键盘的next用法 这算是比较常用的了吧,只要我们想到登录和注册界面,就应该自然而然的想到 - 键盘的next用法(当然不排除相当多的软件并没有实现这个功能). 想法也就是:用户在输入用户名后,点击next跳转到下一个输入框.其实也不用想的如此复杂,在登录界面…
1.移除视图的所以子视图 2.自定义视图(UIView) 3.处理悬浮窗口(类似微信视频),等比缩放 4.自定义前面视图(可以手写字) 5.图片拉伸的几种方式,计算文本占用空间大小 6.UILable相关 7.UIButton相关 8.UISegmentedControl分段控件 9.UIScrollView相关 10.UISearchController相关 11.UICollectionView相关 12.单元格右侧样式 13.自定义UISlider样式 移除视图的所以子视图 [[self.…
转载. Book Description Publication Date: August 12, 2013 Core Animation is the technology underlying Apple’s iOS user interface. By unleashing the full power of Core Animation, you can enhance your app with impressive 2D and 3D visual effects and creat…
注:本人是翻译过来,并且加上本人的一点见解. 前言 一个像素是如何绘制到屏幕上去的?有很多种方式将一些东西映射到显示屏上,他们需要调用不同的框架.许多功能和方法的结合体.这里我们大概的看一下屏幕之后发生的事情.当你想要弄清楚什么时候.怎么去查明并解决问题时,我希望这篇文章能帮助你理解哪一个 API 可以更好的帮你解决问题.我们将聚焦于 iOS,然而我讨论的大多数问题也同样适用于 OS X. 目录 1. 图形堆栈2. 软件组成3. 硬件参与者4. 合成5. 不透明 VS 透明6. 像素对齐 VS…
一:首先查看一下关于UIView的定义 NS_CLASS_AVAILABLE_IOS(2_0) @interface UIView : UIResponder <NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem, UITraitEnvironment, UICoordinateSpace> + (Class)layerClass; // 默认为 [CALayer class].用于创建视图的底层时使用. - (instan…
( 原文博客地址:  http://blog.csdn.net/q199109106q/article/details/8615661) 纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能.极强的用户体验.华丽简洁的外观.华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑. 比如下面张图片,本来是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按…
以下内容转载自:http://my.oschina.net/u/2340880/blog/403996 IOS中图片拉伸技巧与方法总结 一.了解几个图像拉伸的函数和方法 1.直接拉伸法 简单暴力,却是最最常用的方法,直接将图片设置为ImageView的image属性,图片便会随UIImageView对象的大小做自动拉伸.这种拉伸的方法有一个致命的缺陷,它会使图像发生失真与形变. 2.像素点的拉伸 - (UIImage *)stretchableImageWithLeftCapWidth:(NSI…
iOS开发中我们会遇到渐变的背景,内容可变的流式标签,聊天气泡(QQ聊天气泡),由于内容是可变的,宽度和高度同样可变,这样就是导致每次出现的尺寸与之前不一样.如果是需要设置的比较的多,估计美工会烦死,同样也会额外增加的内存开销,所以这个知道一点图片拉伸的技巧会师我们的能使我们APP更加高效,代码更加简洁,事半功倍~从设置的角度来有四种方法可以实现~ Assets设置 首先我们有一个不规则的气泡按钮,大小是35*30,Slices选中水平和垂直方向的距离,宽高设置为1 设置完成之,我们设置Butt…
如上图是一个按钮的背景图,在Android上,很多图片资源都是类似这样子的,但是由于按钮的高度及宽度与图片的世纪尺寸不同,所以需要采用9patch来实现拉伸处理, 可参考:http://www.cnblogs.com/loulijun/archive/2011/12/22/2298087.html 原理是通过draw9patch在图片中间画出的一个区域,图片拉伸的时候只拉伸这个区域,而其他角落或区域则保持原样. iOS同样也可以实现这个功能,而且不需要其他工具从新编辑图片格式,只需要通过代码即可…
*:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px; cursor: pointer; position: absolute…
http://blog.csdn.net/jerryvon/article/details/7526147 20:50:42 一.读取图片 1.从资源(resource)读取 UIImage* image=[UIImage imageNamed:@"1.jpg"]; 2.从网络读取 NSURL *url=[NSURL URLWithString:@"http://www.sinaimg.cn/qc/photo_auto/chezhan/2012/50/00/15/80046_…
以前对于ios的图片拉伸参数一直不太理解,终于看到一篇好文章,转载一下,原文地址:http://blog.csdn.net/q199109106q/article/details/8615661 主要是- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets resizingMode:(UIImageResizingMode)resizingMode 对第一个参数的理解 纵观移动市场,一款移动app,要想长期在移动市场立足,…
概念介绍 直接拉伸图片有时候会导致图片四周变的很模糊 所以要想办法使图片四周的形状不变.于是,端盖(end cap)的概念出来了,用来指定图片中的哪一部分不用拉伸.比如下图中,黄色代表需要被拉伸的矩形区域,上下左右不需要被拉伸的边缘(红色区域)就称为端盖. 具体实现 方法一: 使用UIImage的这个方法,可以通过设置端盖宽度返回一个经过拉伸处理的UIImage对象 - (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapW…
下面张图片,本来是设计来做按钮背景的:   button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: // 得到view的尺寸 CGSize viewSize = self.view.bounds.size; // 初始化按钮 UIButton *button = [[UIButton alloc] init]; // 设置尺寸 button.bounds = CGRectMake(0, 0, 150, 50); // 设置位置 button.center …
纵观移动市场,一款移动app,要想长期在移动市场立足,最起码要包含以下几个要素:实用的功能.极强的用户体验.华丽简洁的外观.华丽外观的背后,少不了美工的辛苦设计,但如果开发人员不懂得怎么合理展示这些设计好的图片,将会糟蹋了这些设计,功亏一篑. 比如下面张图片,本来是设计来做按钮背景的:  button.png,尺寸为:24x60 现在我们把它用作为按钮背景,按钮尺寸是150x50: 1 - (void)viewDidLoad 2 { 3 [super viewDidLoad]; 4 // 得到v…
背景 .9图来源于Android.为了设计出一套图,兼容Android和iOS,使用.9图的方式来对图片进行拉伸以适应不同的屏幕.在iOS中没有.9图的概念,只能先了解Android的.9图再进行模拟Android的方法. 什么是.9图片 即图片后缀名前有.9的图片,如pic.9.png.pic1.9.jgp,诸如此类的图片就称为.9图片.且在原始图片四周添加了一个像素,在这一个像素上用黑线标识出相关的区域. .9图片的作用 .9图片的作用是在图片拉伸的时候特定的区域不会发生图片失真,特定的区域…
在oc中为了增强已有类的功能,我们经常使用分类.使用分类,我们可以在不破坏原有类的结构的前提下,对原有类进行模块化的扩展. 但是在swift中没有分类这种写法了.相对应的是swift中只有扩展(Extensions). 下面是swift中扩展(Extensions)的说明 扩展就是向一个已有的类.结构体.枚举类型或者协议类型添加新功能(functionality).这包括在没有权限获取原始源代码的情况下扩展类型的能力(即逆向建模).扩展和 Objective-C 中的分类(categories)…
QQChat Layout - 第二季 本来第二季是快写好了, 也花了点功夫, 结果gitbook出了点问题, 给没掉了.有些细节可能会一带而过, 如有疑问, 相互交流进步~. 在第一季中我们完成了QQ聊天界面的基本框架.但是相对于iphone上手机QQ的聊天界面还存在以下差距. 第二季中的工程源文件下载地址:点击到百度云下载 聊天消息没有左右区分. 聊天内容没有背景图片. 菜单栏还没做出, 不能发消息. 现在我们就一步步来解决这些问题.首先我们解决消息没有左右区分的问题. 第四步: 我们打开S…
按钮 自定义按钮:调整内部子控件的frame 方式1:实现titleRectForContentRect:和imageRectForContentRect:方法,分别返回titleLabel和imageView的frame 方式2:在layoutSubviews方法中设置 内边距 // 设置按钮内容的内边距(影响到imageView和titleLabel) @property(nonatomic) UIEdgeInsets contentEdgeInsets; // 设置titleLabel的内…