1、获取全局的Delegate对象,这样我们可以调用这个对象里的方法和变量:

[(MyAppDelegate*)[[UIApplication sharedApplication] delegate] MyMethodOrMyVariable];

2、获得程序的主Bundle:

NSBundle *bundle = [NSBundle mainBundle];

Bundle可以理解成一种文件夹,其内容遵循特定的框架。

Main Bundle一种主要用途是使用程序中的资源文件,如图片、声音、plst文件等。

NSURL *plistURL = [bundle URLForResource:@"plistFile" withExtension:@"plist"];

上面的代码获得plistFile.plist文件的路径。

3、在程序中播放声音:

首先在程序添加AudioToolbox:

其次,在有播放声音方法的.m方法添加#import:

#import

接下来,播放声音的代码如下:

NSString *path = [[NSBundle mainBundle] pathForResource:@"soundFileName" ofType:@"wav"];

SystemSoundID soundID;

AudioServicesCreateSystemSoundID ((__bridge CFURLRef)[NSURL fileURLWithPath:path], &soundID);

AudioServicesPlaySystemSound (soundID);

4、设置和获取类中属性值:

[self setValue: 变量值 forKey: 变量名];

[self valueForKey: 变量名];

5、让某一方法在未来某段时间之后执行:

[self performSelector:@selector(方法名) withObject:nil afterDelay:延迟时间(s)];

6、获得设备版本号:

float version = [[[UIDevice currentDevice] systemVersion] floatValue];

7、捕捉程序关闭或者进入后台事件:

UIApplication *app = [UIApplication sharedApplication];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillResignActive:) name:UIApplicationWillResignActiveNotification object:app];

applicationWillResignActive:这个方法中添加想要的操作

8、查看设备支持的字体:

for (NSString *family in [UIFont familyNames]) {

NSLog(@"%@", family);

for (NSString *font in [UIFont fontNamesForFamilyName:family]) {

NSLog(@"\t%@", font);

}

}

9、为UIImageView添加单击事件:

imageView.userInteractionEnabled = YES;

UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(yourHandlingCode:)];

[imageView addGestureRecognizer:singleTap];

10、添加多语言支持: 比如Image Picker这样的组件,它上面的按钮的文字是随着设备语言环境的改变而改变的,但是要先在工程添加语言:

11、使程序支持iTunes这样的设备,比如可以使用PC端的工具往程序的Documents中拖放文件。

12、页面切换效果设置:

controller.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

[self presentModalViewController:controller animated:YES];

可供使用的效果:

UIModalTransitionStyleCoverVertical

UIModalTransitionStyleFlipHorizontal

UIModalTransitionStyleCrossDissolve

UIModalTransitionStylePartialCurl

恢复之前的页面:

[self dismissModalViewControllerAnimated:YES];

iOS开发:小技巧积累的更多相关文章

  1. iOS开发小技巧 - UILabel添加中划线

    iOS开发小技巧 遇到的问题: 给Label添加中划线,然后并没有效果 NSString *str = [NSString stringWithFormat:@"合计金额 ¥%.2f&quo ...

  2. iOS开发小技巧 - runtime适配字体

    iOS开发小技巧 - runtime适配字体 版权声明:本文为博主原创文章,未经博主允许不得转载,有问题可联系博主Email: liuyongjiesail@icloud.com 一个iOS开发项目无 ...

  3. iOS开发小技巧 -- tableView-section圆角边框解决方案

    [iOS开发]tableView-section圆角边框解决方案 tableView圆角边框解决方案 iOS 7之前,图下圆角边框很容易设置 iOS 7之后,tableviewcell的风格不再是圆角 ...

  4. iOS开发小技巧--即时通讯项目:消息发送框(UITextView)高度的变化; 以及UITextView光标复位的小技巧

    1.即时通讯项目中输入框(UITextView)跟随输入文字的增多,高度变化的实现 最主要的方法就是监听UITextView的文字变化的方法- (void)textViewDidChange:(UIT ...

  5. ios开发小技巧之提示音播放与震动

    在ios开发中,有时候我们需要频繁播放某种提示声音,比如微博刷新提示音.QQ消息提示音等,对于这些短小且需要频繁播放的音频,最好将其加入到系统声音(system sound)里. 注意: 需要播放的音 ...

  6. 【转】IOS开发小技巧

    1,Search Bar 怎样去掉背景的颜色(storyboard里只能设置background颜色,可是发现clear Color无法使用). 其实在代码里还是可以设置的,那就是删除背景view [ ...

  7. iOS开发小技巧--字典和数组的中文输出

    一.在解析json数据的时候,得到的集合对象或者数组对象在用%@打印的时候回出现类似乱码的情况.如图: 在iOS中打印字典或者数组对象,系统会默认调用字典对象和数组对象的descriptionWith ...

  8. ios开发小技巧(转)

    1.通过下面方式可以获取图片的像素颜色点:- (void*)getImageData:(UIImage*)image{    void* imageData;    if (imageData == ...

  9. iOS开发小技巧--相机相册的正确打开方式

    iOS相机相册的正确打开方式- UIImagePickerController 通过指定sourceType来实现打开相册还是相机 UIImagePickerControllerSourceTypeP ...

  10. iOS开发小技巧--iOS键盘 inputView 和 inputAccessoryView

    iOS键盘 inputView 和 inputAccessoryView 1.inputAccessoryView UITextFields和UITextViews有一个inputAccessoryV ...

随机推荐

  1. Nand Flash 基础

    1. 根据物理结构上的区别,Nand Flash主要分为: SLC(Single Level Cell): 单层式存储 MLC(Multi Level Cell): 多层式存储 TLC(Triple ...

  2. navicat premiun连接mysql数据库报错,错误代码:1251

    今天在电脑上安装了Mysql 8.0.11,然后想用 Navicat Premium连接数据库,结果报错了: error 1251:client does not support authentica ...

  3. 惠普台式机在UEFI BIOS设置通电自动开机 影响电脑自动重启关不了机设置

    设置通电自动开机 影响电脑自动重启关不了机设置   惠普台式机在UEFI BIOS中 1. 开机时不断点击F10键进入BIOS,选择Advanced(高级)然后选择Boot Options,点击回车 ...

  4. 在MD中使用Emoji

    mark语法中支持emoji表情 具体语法是:emoji: 比如我输入 :smile: 就会出现微笑

  5. 2.3 Rust函数

    2.3 函数 [root@itoracle src]# cargo new functions Created binary (application) `functions` package [ro ...

  6. 转 关于bootstrap--表格(table的各种样式)

    https://www.cnblogs.com/shark1100913/p/5627233.html 关于bootstrap--表格(table的各种样式)   1.table-striped:斑马 ...

  7. 关于let 和 var 的作用域问题

    直接来一个经典案例: // 1. 下面的结果是什么? 为什么? for (var i=0;i<5;i++){ setTimeout(function () { console.log(i) }, ...

  8. Spark各个组件的概念,Driver进程

    spark应用涉及的一些基本概念: 1.mater:主要是控制.管理和监督整个spark集群 2.client:客户端,将用应用程序提交,记录着要业务运行逻辑和master通讯. 3.sparkCon ...

  9. Broken Keyboard (a.k.a. Beiju Text) UVA - 11988 (链表)

    题目链接:https://vjudge.net/problem/UVA-11988 题目大意:输入一个字符串,输出在原本应该是怎么样的?  具体方法是 碰到' [ ' 回到最前面  碰到‘ ]’  回 ...

  10. bootstrap-datepicker控件中文 ,只显示年和只显示月份

    插件下载地址 https://github.com/uxsolutions/bootstrap-datepicker html <link href="css/bootstrap-da ...