码迷,mamicode.com
首页 > 移动开发 > 详细

iOS之SQLite中的查询与排序 访问手机相册 向手机相册中存图

时间:2015-03-20 01:16:49      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:

Day05

SQLite中的查询与排序

按查询结果排序:[requestsetSortDescriptors@[NSSortDescriptor sortDescriptorWithKey:@"age"ascending:yes]];

设置查询条件:

NSPredicate  *pre=nil;

1.比较运算符 > <  >=  <= == !=

pre=[NSPridicate predicateWithFormat@“age>40”];

2. 范围运算符 IN  BETWEEN

pre=[NSPredicatepredicateWithFromat@“age BETWEEN{30,40}”];

pre=[NSPredicatepredicateWithFromat:@"name IN{‘aaaaa‘,‘bcd’}"];

3.字符串处理 BEGINSWITH ENDWITH CONTANS  c:不区分大小写  d:不区分发音

pre=[NSPredicatepredicateWithFormat@“name BEGINSEITH[cd]‘a‘”];

pre=[NSPredicatepredicateWithFormat@“name CONTAINS[cd]” ‘a‘];

4.通配符 LIKE ?代表单个字符  *代表多个字符

pre=[NSPredicatepredicateWithForm@“name LIKR[cd] ‘*m‘”];

最终别忘记了添加[requestsetPredicate:pre];

 

得到相册中的照片:

step1:创建UIImagePickerController的实例

UIImagePickerController*pic=[[UIImagePickerController alloc]init];

step2:遵守协议 并把自己设置为代理

<UINavigationControllerDelegate,UIImagePickerControllerDelegate>

pic.delegate=self

step3:调用方法

[picsetSourceType:UIImagePickerControllerSourceTypeSavePhotosAlbum]

    UIImagePickerControllerSourceTypePhotoLibrary,//直接取library

    UIImagePickerControllerSourceTypeCamera,//打开照相机

   UIImagePickerControllerSourceTypeSavedPhotosAlbum//直接进入相册 PhotosAlbum相册 相薄

step4:调用推出新的视图的方法present推出  因为协议中有一个NavigationController的代理

[selfpresentViewController:pic animated:YEScompletion:nil]

 

step5:在下面的方法中实现

-(void)imagePickerController:(UIImagePickerController *)pickerdidFinishPicingMedia WithInfo:(NSDicationary *)info;

创建一个UIImage的实例通过下面的方法得到所有的照片

UIImage*image=[info objectForKeyedSubscript:UIImagePickerControllerOriginalImage];

 

ScrollView中常用的设置

   不出现白色区域:bounces=no;

showHorizontalScrollIndicator=no;设置水平没有滚动 Horizontal水平的

showVerticalScollIndicator=no;设置垂直没有滚动 Vertical垂直

 

在scrollView中如何实现删除scrollView中的照片 改变其他照片的位置

   可以遍历拿到所有的scrollView中的所有照片  一般使用ImageView

    在循环中实现改变坐标的位置

 

step6:在方法中可以根据NavigationController的一些属性 得到跳转的是哪个界面

- (void)navigationController:(UINavigationController*)navigationController willShowViewController:(UIViewController*)viewController animated:(BOOL)animated{}

NavigationController.viewController.count=1跳转到的是哪个界面

如何实现将照片保存到手机内存中的相册中

step1:得到保存的照片

      a.创建画布

      UIGraphicsBeginImageContext(imageView.frame.size)

      b.把imageView的背景渲染到画布中

      [imageView.layrranderInContext:UIGraphicsCurrentContest()];

      c.把画布中的照片取出来

      UIImage*image=UIGraphicsGetImageFromCurrentImageContext();

      d.结束渲染

      UIGraphicsEndImageContext();

step2:把照片保存到系统相册中 Selector 不要瞎写点击到方法内部  系统已经帮你写好

      UIImageWriteToSavePhotosAlbum(image,self,@selector(image:didFinishSavingWithError:contextInfo:),nil);

      实现方法

-(void)image:(UIImage *)image didFinishSavingWithError:(NSError *)errorcontextInfo:(void *)contextInfo{

    UIAlertView *alertView =[[UIAlertViewalloc]initWithTitle:@"提示"message:@"图片保存完成" delegate:selfcancelButtonTitle:@"确定"otherButtonTitles:nil, nil];

    [alertView show];

}

 

如何实现在一个view中插入一个背景

step1:先创建一个ImageView的实例 给一张图片

step2

      方法一:

      [self.view insertSubView:imageviewatIndex:0] 插入到视图的最下层

       方法二:

      [self.view addSubView:imageView];添加到视图当中  ImageView会覆盖原来的视图

 

把某个子视图带到前面显示

[self.viewbringSubViewToFront:imageView];

 

判断点击的位置是否在某个视图上

方法一:判断该次点击的位置是否在视图的frame中

if(CGRectContainsPoint(self.imageView.frame,p));

方法二:判断两个视图的frame是否有耦合

if(CGRectContainsRect(ImageView.frame,imageView.frame))

 

视图位置改变时重新定位视图

方法一:转变原来的frame

CGRect  oldFram =imageView.frame;

CGRect  newFram=[(要转换的视图的) convertRect:oldFrame toView:self.view];

 

方法二:转变原来的中心点坐标

CGPoint  oldCenter=self.imageView.center

CGPoint   newCenter=[self.viewconverPoint:oldCenter  toView:self.enitView];

 

iOS之SQLite中的查询与排序 访问手机相册 向手机相册中存图

标签:

原文地址:http://www.cnblogs.com/katydid/p/4352311.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!