【iOS-Tips】-小贴士

1:UIImage的2种加载方式:

方式一:有缓存(图片所占用的内存会一直停留在程序中)

//name是图片的文件名
+ (UIImage *)imageNamed:(NSString *)name;

方式二:无缓存(图片所占用的内存会在一些特定操作后被清除)

//path是图片的全路径
+ (UIImage *)imageWithContentsOfFile:(NSString *)path
- (id)initWithContentsOfFile:(NSString *)path;
2:常见错误

setValue:forUndefinedKey:]: this class is not key value coding

错误原因是:连线出问题了

3:键盘相关:
resignFirstResponder
当叫出键盘的那个控件(第一响应者)调用这个方法时,就能退出键盘 endEditing
只要调用这个方法的控件内部存在第一响应者,就能退出键盘
4:按钮高亮时没有效果

设置按钮在不同状态下的背景图片(为了保证高亮的图片正常显示,必须设置按钮的type为custom)

// 1.创建一个自定义的按钮
UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];
5:tranmsform

利用transform属性可以设置旋转角度、比例缩放、平移等属性

@property(nonatomic) CGAffineTransform transform;

通过以下属性可以修改控件的位置

1:frame.origin

2:center

通过以下属性可以修改控件的尺寸

1:frame.size

2:bounds.size

创建一个transform属性(在最原始的位置的基础上)

//移动
CGAffineTransform CGAffineTransformMakeTranslation(CGFloat tx, CGFloat ty) ;
//缩放
CGAffineTransform CGAffineTransformMakeScale(CGFloat sx, CGFloat sy);
//旋转(angle为弧度)
CGAffineTransform CGAffineTransformMakeRotation(CGFloat angle)

在某个transform的基础上进行叠加

CGAffineTransform CGAffineTransformTranslate(CGAffineTransform t, CGFloat tx, CGFloat ty);
CGAffineTransform CGAffineTransformScale(CGAffineTransform t, CGFloat sx, CGFloat sy);// 角度是正数:顺时针, 角度是负数:逆时针
CGAffineTransform CGAffineTransformRotate(CGAffineTransform t, CGFloat angle);

清空之前设置的transform属性

view.transform = CGAffineTransformIdentity;

获得Plist文件的全路径

NSBundle *bundle = [NSBundle mainBundle];
NSString *path = [bundle pathForResource:@"imageData" ofType:@"plist"];
[NSArray arrayWithContentsOfFile:path];//(带有File的传入的参数为全路径不是文件名)
6:png图片不用加扩展名
7:取出UIButton属性

按钮不仅可以设置相关属性:setTitle,setImage...同样我们还可以根据按钮的状态取出对应的属性值:

//获得按钮的文字
- (NSString *)titleForState:(UIControlState)state; //获得按钮的文字颜色
- (UIColor *)titleColorForState:(UIControlState)state; //获得按钮图片
- (UIImage *)imageForState:(UIControlState)state; //获得按钮的背景图片
- (UIImage *)backgroundImageForState:(UIControlState)state;

这样不方便的话,我们还可以用UIButton的' currentTitle,currentTitleColor,currentImage,currentBackgroundImage '

这些属性来取得当前的属性值。


作者:Darren

微博:@IT_攻城师

github:@Darren90

博客:http://www.cnblogs.com/fengtengfei/

欢迎您的访问...


【iOS-Tips】-小贴士的更多相关文章

  1. iOS之小功能模块--彩虹动画进度条学习和自主封装改进

    前言: 首先展示一下这个iOS小示例的彩色进度条动画效果: 阅读本文先说说好处:对于基础不好的读者,可以直接阅读文末尾的"如何使用彩虹动画进度条"章节,然后将我封装好的这个功能模块 ...

  2. android性能小贴士 翻译

    转自http://developer.android.com/training/articles/perf-tips.html 性能小贴士: 这篇文档主要一些微优化可以提升应用程序性能,但是这些改变不 ...

  3. Angular2 小贴士 Name

    Angular2 正式版已经发布了一个月了,我也是通过各种方式在进行验证是否可以满足我们的需求,今天我就发现了一个问题.现在我们来一起说明一下,这个可能不算是bug,而应该需要我们记住就可以了. 我们 ...

  4. iOS:小技巧(不断更新)

    记录下一些不常用技巧,以防忘记,复制用. 1.获取当前的View在Window的frame: UIWindow * window=[[[UIApplication sharedApplication] ...

  5. 【小贴士】虚拟键盘与fixed带给移动端的痛!

    前言 今天来公司的主要目的就是研究虚拟键盘与fixed的问题,期间因为同事问起闭包与事件委托(阻止冒泡)相关问题,便穿插了一篇别的: [小贴士]工作中的”闭包“与事件委托的”阻止冒泡“,有兴趣的朋友可 ...

  6. SVN小贴士

    我辛辛苦苦写的到哪里了? SVN小贴士SVN服务器上的代码项目组公用,你的每一个提交都会体现给项目组每个人,所以提交要慎重,要注意避免代码冲突,使用SVN小贴士: 1.提前宣布开发计划,保持项目组成员 ...

  7. Windows Phone中使用Storyboard做类似 IOS 屏幕小白点的效果

    windows phone中做动画其实很方便的,可以使用Blend拖来拖去就做出一个简单的动画,下面做了一个 ios屏幕小白点的拖动效果,包括速度判断移动 使用Blend生成以下代码 <Stor ...

  8. 【IOS实例小计】今日开贴,记录我的ios学习生涯,留下点滴,留下快乐,成荫后人。

    今天开贴来记录自己的ios学习过程,本人目前小白一个,由于对ios感兴趣,所以开始学习,原职java程序,呵呵,勿喷. 本次的[ios实例小计]主要参考一文http://blog.sina.com.c ...

  9. 小贴士——提高PHP程序在NGINX代理服务器的性能

    NGINX本身就是面向最大性能的代理服务器,因此在使用NGINX,并没有性能调整的配置工作.但是却有很多选项可用于定制NGINX的行为,利用底层硬件和操作系统. 下面将介绍用于提供PHP在NGINX的 ...

  10. jprofiler8使用小贴士

    说明:本文的小贴士是针对jprofiler8的,其他版本上可能有不适用的地方 贴士一:使用jpenable监控,无需增加jvm参数和重启 贴士一:使用jpenable监控,无需增加jvm参数和重启 j ...

随机推荐

  1. 使用finalshll连接linux

    一.安装ubuntu: 我在window10上装了VMware,好像window10自带虚拟机吧;然后傻瓜式装机,装好后发现没网不知道什么原因,然后百度啪啦啪啦找了一堆,解决方法是: 然后重启下ubu ...

  2. C/C++函数指针详解(转)

    这两天在研究C/C++的函数指针,找到一篇讲解比较详细的博客,内容有点多,但是讲解得比较详细,适合初学者.特转之: 1.     无处不见的函数指针 使用函数指针可以设计出更优雅的程序,比如设计一个集 ...

  3. 条款14:在资源管理类中心copying行为(Think carefully about copying behavior in resource-manage classes)

    NOTE: 1.复制RAII 对象必须一并赋值它所管理的资源,所以资源的copying行为决定RAII对象的copying行为. 2.普遍而常见的RAII class copying 行为是: 抑制c ...

  4. Java:清空文件内容

    文章来源:https://www.cnblogs.com/hello-tl/p/9139432.html import java.io.*; public class FileBasicOperati ...

  5. Poj 2337 Catenyms(有向图DFS求欧拉通路)

    题意: 给定n个单词, 问是否存在一条欧拉通路(如acm,matal,lack), 如果存在, 输出字典序最小的一条. 分析: 这题可以看作http://www.cnblogs.com/Jadon97 ...

  6. 3.3.2 使用 cut 选定字段

        cut 命令是用来剪下文本文件里的数据,文本文件可以是字段类型或是字符类型.后一种数据类型在遇到需要从文件里剪下特定的列时,特别方便.请注意:一个制表字符在此被视为单个字符.          ...

  7. 倍增法求LCA

    倍增法求LCA LCA(Least Common Ancestors)的意思是最近公共祖先,即在一棵树中,找出两节点最近的公共祖先. 倍增法是通过一个数组来实现直接找到一个节点的某个祖先,这样我们就可 ...

  8. [HDU3065]病毒持续侵袭中(AC自动机)

    传送门 AC自动机的又一模板,统计每个字符串在文本中的次数. 所以就不需要vis数组了. ——代码 #include <cstdio> #include <cstring> # ...

  9. hdu 1689 求奇环bfs关键是层次图

    #include<stdio.h> #include<string.h> #include<stdlib.h> #include<queue> usin ...

  10. C#.net中当地址有中文时,图片无法显示解决方法

    原文发布时间为:2008-11-05 -- 来源于本人的百度文章 [由搬家工具导入] 搞了半天都无法正常显示图片, string path = Server.MapPath("." ...