用到的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/ ...
随机推荐
- poj 2195 Going Home(最小费用最大流)
题目:http://poj.org/problem?id=2195 有若干个人和若干个房子在一个给定网格中,每人走一个都要一定花费,每个房子只能容纳一人,现要求让所有人进入房子,且总花费最小. 构造一 ...
- 反编译.net dll
自己公司的程序,年代久了,没有源代码,修改一些小地方,只能反编译,还好当时没有混淆. 先ildasm 反编译. 删除 .publickey = ( ) 这段,去原来签名. 然后再用找要改的IL,这 ...
- [HDU 4828] Grids
Grids Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Subm ...
- SGU 185 Two shortest ★(最短路+网络流)
[题意]给出一个图,求 1 -> n的2条 没有重边的最短路. 真◆神题--卡内存卡得我一脸血= =-- [思路] 一开始我的想法是两遍Dijkstra做一次删一次边不就行了么你们还又Dijks ...
- Mint Linuxubuntu 字体配置文件
<?xml version="1.0"?><!DOCTYPE fontconfig SYSTEM "fonts.dtd"><fon ...
- 【转】Please define the NDK_PROJECT_PATH variable to point to it
原文网址:http://blog.csdn.net/yuanjingjiang/article/details/34857623 Please define the NDK_PROJECT_PATH ...
- XUtils框架的学习(一)
一 xutils框架引入到AndroidStudio工程,最简单的方法:① 在APP的build.gradle里面加入 compile 'org.xutils:xutils:3.3.36'.② 一定 ...
- 【转】Eclipse配置Struts2问题:ClassNotFoundException: org...dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
我的解决方案 一开始,我是依照某本教材,配置了User Libraries(名为struts-2.2.3, 可供多个项目多次使用), 然后直接把struts-2.2.3引入过来(这个包不会真正的放在项 ...
- (转载)HTTP URL
HTTP URL的格式如下: http://host[“:”post][abs_path] 其中http表示要通过HTTP协议来定位网络资源.host表示合法的Internet主机域名或IP地址(以点 ...
- cell1这个字符串如何截取掉前边的cell剩下后边的数字 后边数字长度不固定
cell1这个字符串如何截取掉前边的cell剩下后边的数字 后边数字长度不固定'cell1'.replace(/cell/,'')string.substr(4)string.slice(4)