用到的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)