2011年11月22日 星期二

iphone 寫檔和讀檔


前輩說,程式命名做的好就不用寫註解,所以nothing to say
-(void)writeToTextFile:(NSString*)content withFileName:(NSString*)textFileName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *fileName = [NSString stringWithFormat:@"%@/%@",documentsDirectory,textFileName];
    
    //save context to file
    [content writeToFile:fileName atomically:NO encoding:NSStringEncodingConversionAllowLossy error:nil];
}

-(void)readTextFile:(NSString *)textFileName
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *fullFileName = [NSString stringWithFormat:@"%@/%@",documentsDirectory,textFileName];
    
    NSString *content = [[NSString alloc] initWithContentsOfFile:fullFileName usedEncoding:nil error:nil];
    NSLog(@"%@",content);
    [content release];
}

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSString *testContent = @"test to write file text!!";
    [self writeToTextFile:testContent withFileName:@"textfile.txt"];
    [self readTextFile:@"textfile.txt"];
    
}

2011年11月7日 星期一

UIView滑動動畫效果



//這一行設定的768是起始點
SlideView.frame = CGRectMake(768, 512, 384, 512-43);
//要先顯示在畫面上,再做滑動
[self.view.superview addSubview: SlideView];
//動畫的參數設定
[UIView beginAnimations:@"animation" context:ObjBusinessCard.view];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelegate:self];
            //設定動畫開始時的圖片狀態(當前狀態)
            [UIView setAnimationBeginsFromCurrentState:YES];
          
            //設定動畫結束時的圖片狀態(滑動後的位置)
            SlideView.transform = CGAffineTransformTranslate(SlideView.transform, x, 512);
            //結束後的位置要設定給frame否則會無法顯示在畫面上
            SlideView.frame = CGRectMake(x, 512, 384, 512-43);
            //產生動畫
            [UIView commitAnimations];
※重要提示,若是要滑出螢幕外,若有使用removeformsuperview會導致滑出失效