用到的IOS知识点小结(1)
以下内容是在ios6模拟器运行成功的,或者与我自己的开发环境有关系。
1.强制转屏,不过不推荐,是私有方法
// if ([[UIDevice currentDevice] respondsToSelector:@selector(setOrientation:)]) {
// [[UIDevice currentDevice] performSelector:@selector(setOrientation:)
// withObject:(id)UIDeviceOrientationPortrait];
// }
2.给导航条添加自定义的图片按钮,并且要有点击事件
先建立个按钮:
UIButton *button1 = [UIButtonbuttonWithType:UIButtonTypeCustom];
[button1 setImage:[UIImageimageNamed:@"btu_shop.png"] forState:UIControlStateNormal];
[button1 addTarget:selfaction:@selector(gotoShop) forControlEvents:UIControlEventTouchUpInside];
button1.frame = CGRectMake(0, 0, 60, 40);
然后把按钮作为一个view加入
UIBarButtonItem中:
UIBarButtonItem *shopButton = [[UIBarButtonItemalloc]initWithCustomView:button1];
self.navigationItem.leftBarButtonItems = [NSArrayarrayWithObjects:shopButton,storeButton, nil];
3.把一张图片作为背景
UIImageView *imageView = [[UIImageViewalloc]initWithFrame:CGRectMake(0, 0, 1024, 768)];
imageView.image = [UIImageimageNamed:@"background.png"];
[self.viewinsertSubview:imageView belowSubview:self.table];
4.读取图片,不存在图片则下载
- (UIImage *)getPictureWithURL:(NSString *)str {
UIImage *image = nil;
NSString *picURLWithMD5 = [[Cell class]md5:str];//先把图片的路径加密
NSString *picPath = [[Cell class]makeUserFilePath:picURLWithMD5];
if ([[NSFileManagerdefaultManager] fileExistsAtPath:picPath]) {
//存在图片的时候直接读取
NSData *data = [NSDatadataWithContentsOfFile:picPath];
image = [UIImage imageWithData:data];
}
else{
//下载图片
NSURL *url=[NSURLURLWithString:str];
image = [[[UIImagealloc] initWithData:[NSDatadataWithContentsOfURL:url]]autorelease];
//将图片写到文件中
[UIImagePNGRepresentation(image) writeToFile: picPath atomically:YES];
}
return image;
}
5.输入框有字的时候再进行操作
if(self.textField.text.length != 0){
6.想去除一个modalView的同时跳转,必须用:
[selfdismissViewControllerAnimated:YEScompletion:^{
UINavigationController *nav = [[UINavigationControlleralloc] initWithRootViewController:detailView];
[selfpresentModalViewController:nav animated:YES];
[nav release];
}];
7.sqlite更新自增值
// char *update = "update sqlite_sequence set seq = 0 ";//更新自增的值
// sqlite3_prepare_v2(database, update , -1, &statement, nil) ;
// if (sqlite3_step(statement) != SQLITE_DONE)
// {
// NSLog(@"error update!");
// }
8.把UIView转成Image,导入<QuartzCore/QuartzCore.h>
-(UIImage *)makeScreenshot:(UIView*) tView{
[tView retain];
@try {
if(UIGraphicsBeginImageContextWithOptions != NULL)
{
UIGraphicsBeginImageContextWithOptions(tView.bounds.size, NO, 1);
} else {
UIGraphicsBeginImageContext(tView.bounds.size);
}
}
@catch (NSException *exception) {
[tView release];
return nil;
}
[tView.layerrenderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[tView release];
return viewImage;
}
用到的IOS知识点小结(1)的更多相关文章
- C++重要知识点小结---3
C++重要知识点小结---1:http://www.cnblogs.com/heyonggang/p/3246631.html C++重要知识点小结---2:http://www.cnblogs.co ...
- C++重要知识点小结---2
C++重要知识点小结--1 :http://www.cnblogs.com/heyonggang/p/3246631.html 1.C++允许程序员声明一个不能有实例对象的类,这样的类惟一的用途是被继 ...
- IOS学习笔记48--一些常见的IOS知识点+面试题
IOS学习笔记48--一些常见的IOS知识点+面试题 1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memor ...
- React及Nextjs相关知识点小结
React及Nextjs知识点小结 函数式组件和类组件区别是什么 1.函数式组件是用于创建无状态的组件,组件不会被实例化,无法访问this中的对象,无法访问生命周期方法,是无副作用的,相比于类组件函数 ...
- 【SpringBoot MQ 系列】RabbitMq 核心知识点小结
[MQ 系列]RabbitMq 核心知识点小结 以下内容,部分取材于官方教程,部分来源网络博主的分享,如有兴趣了解更多详细的知识点,可以在本文最后的文章列表中获取原地址 RabbitMQ 是一个基于 ...
- SpringBoot 系列教程之事务隔离级别知识点小结
SpringBoot 系列教程之事务隔离级别知识点小结 上一篇博文介绍了声明式事务@Transactional的简单使用姿势,最文章的最后给出了这个注解的多个属性,本文将着重放在事务隔离级别的知识点上 ...
- disruptor笔记之四:事件消费知识点小结
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- IOS开发,知识点小结,ios开发中经常使用的宏定义总结
IOS开发,从应用跳转到用浏览器打开网页: [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http:// ...
- iOS知识点、面试题 之二
最近面试,与大家分享一下,分三文给大家: 当然Xcode新版本区别,以及iOS新特性 Xcode8 和iOS 10 在之前文章有发过,感兴趣的可以查阅: http://www.cnblogs.com/ ...
随机推荐
- Android开发之点击两次Back键退出App
Back按键的方法是onKeyDown()方法,重写该方法就可以改变back按键的作用. 实现点击两次Back按键退出app,有两种方法: 方法1. private static boolean is ...
- eclipse 点击 open Implementation就退出eclipse
输入法不对.. 切换到纯英文的输入法. 微软自带的那个.. 我电脑上也这样. 现在好了 (安装谷歌输入法貌似存在这个问题)
- [原]Unity3D深入浅出 - 认识开发环境中的RenderSettings面板
点击菜单栏的Edit项里的RenderSettings即可打开该面板. Fog:在Scene中开启雾效果 Fog Color:雾的颜色 Fog Mode:雾效果的模式,Linear(线性雾效果) Ex ...
- 【转载】LVS+MYCAT+读写分离+MYSQL主备同步部署手册(邢锋)
LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1 配置MYSQL主备同步…. 2 1.1 测试环境… 2 1.2 配置主数据库… 2 1.2.1 ...
- (5)jvm垃圾回收器相关垃圾回收算法
引用计数法[原理]--->引用计数器是经典的也是最古老的垃圾收集防范.--->实现原理:对于对象A,只要有任何一个对象引用A,则计数器加1.当引用失效时,计数器减1.只要对象A的计数器值为 ...
- 【转】Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
我的解决方案 一开始,我是依照某本教材,配置了User Libraries(名为struts-2.2.3, 可供多个项目多次使用), 然后直接把struts-2.2.3引入过来(这个包不会真正的放在项 ...
- linux chmod 命令详解(转)
Ubuntu下修改目录权限需要先用 sudo 来获得管理员权限,格式如下: sudo chmod 600 ××× (只有所有者有读和写的权限)sudo chmod 644 ××× (所有者有读和写的权 ...
- 【转】ubuntu 编码 UTF-8 GBK GB18030
添加编码支持 sudo locale-gen zh_CN.GBK sudo locale-gen zh_CN.GB2312 sudo locale-gen zh_CN.GB18030 2.更新一下lo ...
- Webdriver API (二)
(转载) 1.3 打开测试页面 对页面对测试,首先要打开被测试页面的地址(如:http://www.google.com),web driver 提供的get方法可以打开一个页面: // And no ...
- 021QTP之焦点(多思考)
一.什么是焦点: 焦点说白了就是你打开某一个程序时默认的focuse 比如我们那QTP自带的windows下的示例程序来说,启动它后焦点自动落在了agent name文本框上 二.利用Tab键检查焦点 ...